概要
Module#ancestors -> [Class, Module]
詳細
スーパークラス、インクルードモジュールを優先度順に配列で取得する。
サンプルコード
require 'tbpgr_utils' module ParentModule end class ImplModuleClass include ParentModule end class ExtendedClass < ImplModuleClass;end bulk_puts_eval binding, <<-EOS ExtendedClass.ancestors ExtendedClass.superclass ExtendedClass.superclass.superclass ExtendedClass.included_modules EOS puts ExtendedClass.aa_ancestors __END__ 下記はTbpgrUtils gemの機能 bulk_puts_eval aa_ancestors https://rubygems.org/gems/tbpgr_utils https://github.com/tbpgr/tbpgr_utils
出力
出力
ExtendedClass.ancestors # => [ExtendedClass, ImplModuleClass, ParentModule, Object, Kernel, BasicObject]
ExtendedClass.superclass # => ImplModuleClass
ExtendedClass.superclass.superclass # => Object
ExtendedClass.included_modules # => [ParentModule, Kernel]
-----------------
| BasicObject |
-----------------
|
-----------------
| Kernel |
-----------------
|
-----------------
| Object |
-----------------
|
-----------------
| ParentModule |
-----------------
|
-----------------
|ImplModuleClass|
-----------------
|
-----------------
| ExtendedClass |
-----------------