Как бы вы описали модули, которые были включены в определенный класс в иерархии классов в Ruby? Что-то вроде этого:
module SomeModule
end
class ParentModel < Object
include SomeModule
end
class ChildModel < ParentModel
end
p ChildModel.included_modules #=> [SomeModule]
p ChildModel.included_modules(false) #=> []
Список предков делает модуль выше в дереве:
p ChildModel.ancestors #=> [ChildModel, ParentModel, SomeModule, Object, Kernel]