[Ruby][Sorbet] T::Struct == является сравнением тождества, а не сравнением эквивалентности

Переведите en на en

T::Struct == — это сравнение тождества, а не эквивалентности, в отличие от хэша или обычного Struct.

class Hoge < T::Struct
  const :hoge, Integer
end

a = Hoge.new(hoge: 1)
b = Hoge.new(hoge: 1)

a == b # => false
a == a # => true
Войдите в полноэкранный режим Выход из полноэкранного режима

Выпуск: https://github.com/sorbet/sorbet/issues/1540
Джем для сравнения эквивалентности: https://github.com/bellroy/sorbet-struct-comparable

Оцените статью
devanswers.ru
Добавить комментарий