Sha256: 0d2a42442c9a29e5acd709e407d22dac78c9de9f5256cb9c43dacc1fa5aaafca

Contents?: true

Size: 255 Bytes

Versions: 86

Compression:

Stored size: 255 Bytes

Contents

class Class
  def inherited(klass)
    @descendants ||= []
    @descendants << klass
  end
  
  def descendants
    @descendants.to_collection.map { |klass| [klass] + (klass.descendants if klass.respond_to?(:descendants)).to_a }.flatten.compact
  end
end

Version data entries

86 entries across 86 versions & 2 rubygems

Version Path
glimmer-dsl-web-0.7.0 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.12 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.11 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.10 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.9 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.8 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.7 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.6 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.5 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.4 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.3 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.2 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.1 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.6.0 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.5.0 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.4.4 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.4.3 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.4.2 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.4.1 lib/glimmer-dsl-web/ext/class.rb
glimmer-dsl-web-0.4.0 lib/glimmer-dsl-web/ext/class.rb