Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

ActiveSupport | Class#subclasses

概要

Class#subclasses

詳細

Class#subclasses について

Class#subclasses

サブクラスを取得する。

サンプル

# encoding: utf-8
require 'active_support/core_ext/class/subclasses'
require 'tbpgr_utils'

class A;end
 
class B < A;end
class D < A;end
 
class C < B; end

bulk_puts_eval binding, <<-EOS
A.subclasses
B.subclasses
C.subclasses
EOS

__END__
下記はTbpgrUtils gemの機能

bulk_puts_eval

詳しくは下記参照
https://rubygems.org/gems/tbpgr_utils
https://github.com/tbpgr/tbpgr_utils

出力

A.subclasses # => [B, D]
B.subclasses # => [C]
C.subclasses # => []