LINUX.ORG.RU

История изменений

Исправление Anatolik, (текущая версия) :

Почему == симметричный, а === несимметричный?

Потому что это два разных метода.

Почему такое поведение не отражено в сигнатуре === ?

Потому что это тоже два разных метода.

(1..3).method(:===).owner  #=> Range
2.method(:===).owner       #=> Fixnum
Это поведение отражено в сигнатурах #=== и #===.

Исходная версия Anatolik, :

Почему == симметричный, а === несимметричный?

Потому что это два разных метода.

Почему такое поведение не отражено в сигнатуре === ?

Потому что это тоже два разных метода.

(1..3).method(:===).owner  #=> Range
1.method(:===).owner       #=> Fixnum
Это поведение отражено в сигнатурах #=== и #===.