我正在查看ruby mixin博客文章,它说当一个模块包含在类中时,它的self.included()方法被调用.
我的问题是,这种行为在哪里正式记录?我似乎无法在ruby-docs.org网站或pickaxe上找到它.
And*_*all 10
虽然由于某些原因它不在Ruby Doc上,但included实际上是有记录的.ri Module.included在终端中运行提供:
Run Code Online (Sandbox Code Playgroud)included( othermod )
只要接收器包含在另一个模块或类中,就会调用回调.
Module.append_features如果您的代码想要在模块包含在另一个模块中时执行某些操作,则应优先使用此选项.Run Code Online (Sandbox Code Playgroud)module A def A.included(mod) puts "#{self} included in #{mod}" end end module Enumerable include A end
这个文档可以在Ruby源代码中找到object.c.可悲的是,Module.extended没有记录.