Из Module
Модуль # append_features (mod) → mod = > Когда этот модуль включен в другой, Ruby вызывает append_features в этом модуле, передавая ему принимающий модуль в модуле. Реализация по умолчанию Rubys - это , чтобы добавить константы, методы и переменные модуля этого модуля в mod, если этот модуль еще не был добавлен в mod или один из его предков.
Модуль # prepend_features (mod) → mod = > Когда этот модуль добавляется в другой, Ruby вызывает prepend_features в этом модуле, передавая ему принимающий модуль в модуле. Реализация по умолчанию Rubys - это , чтобы наложить константы, методы и модульные переменные этого модуля в mod, если этот модуль еще не был добавлен в mod или один из его предков.
Может кто-нибудь помочь мне понять следующие вопросы:
-
Какие еще функции
Module
определены какappend
иprepend
, за исключением тех, что были по умолчанию? -
Как они отличаются функционально?
-
Когда использовать
append_features
и когдаprepend_features
? -
В чем разница между двумя жирными линиями, как указано выше?