Вопрос

В Рубинии, если вы это сделаете

rbx-head > Object.instance_methods.grep(/^_.*/)
 => ["__extend__", "__show__", "__marshal__", "__instance_of__", "__instance_variable_get__", "__send__", "__id__", "__instance_variable_set__", "__respond_to_eh__", "__instance_variables__", "__class__", "__kind_of__", "__instance_variable_defined_eh__", "__nil__", "__metaclass__", "__fixnum__", "__method__"] 

которая включает в себя "__respond_to_eh__" а также "__instance_variable_defined_eh__".

Так что это потому, что народ Рубиния хочет обернуть имена методов, с которыми не следует испортить __, и вам не разрешено использовать ? до окончания названия метода, а?

Это было полезно?

Решение

Они сейчас измененный к использованию __instance_variable_defined_p__ а также __respond_to_p__ в предикатах, как везде, в соответствии с их комментариями.

Мех.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top