概要
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 | -----------------