Module: Kennel::SubclassTracking

Included in:
Models::Base
Defined in:
lib/kennel/subclass_tracking.rb

Instance Method Summary collapse

Instance Method Details

#abstract_class? ⇒ Boolean

Returns:

  • (Boolean)


12
13
14
# File 'lib/kennel/subclass_tracking.rb', line 12

def abstract_class?
  !!@abstract_class
end

#recursive_subclasses ⇒ Object



4
5
6
# File 'lib/kennel/subclass_tracking.rb', line 4

def recursive_subclasses
  subclasses + subclasses.flat_map(&:recursive_subclasses)
end

#subclasses ⇒ Object



8
9
10
# File 'lib/kennel/subclass_tracking.rb', line 8

def subclasses
  @subclasses ||= []
end