Насколько я знаю, нет ничего такого, что вы описываете.Однако вот как вы можете создать свой собственный, используя Class::inherited
.
module MyModule
def self.class_added(klass)
# ... handle it
end
class ::Class
alias_method :old_inherited, :inherited
def inherited(subclass)
MyModule.class_added(subclass) if /^MyModule::\w+/.match subclass.name
old_inherited(subclass)
end
end
end
module MyModule
# now add classes
end