Э
Size: a a a
Э
K
K
K
K
K
V
def
self.included(base) { base.prepend(CustomReports::Duration) }
сигнатуры совпадают ancestors
говорит что prepend module есть у класса, но в итоге все равно не вызывается prepend метод, в чем может быть косякmodule CustomReports
module Duration
def f
puts 'fff'
end
end
end
module M1
def self.included(base)
base.prepend(CustomReports::Duration)
end
end
class Cl
include M1
end
p Cl.ancestors #=> [CustomReports::Duration, Cl, M1, Object, Kernel, BasicObject]
p Cl.instance_methods(false).include?(:f) #=> false
p Cl.new.respond_to?(:f) #=> true
prepend
-енного модуля не появляется в классе, просто когда мы на экземпляре класса вызываем метод, то он ищется в иерархии наследования, первым элементом в которой стоит за-prepend
-енный модуль.NZ
K
NZ
S
SR
VV
Р
SR