module Rethinker::Document::Polymorphic::ClassMethods
Public Instance Methods
descendants_type_values()
click to toggle source
# File lib/rethinker/document/polymorphic.rb, line 25 def descendants_type_values ([self] + descendants).map(&:type_value) end
inherited(subclass)
click to toggle source
Calls superclass method
# File lib/rethinker/document/polymorphic.rb, line 16 def inherited(subclass) super subclass.field :_type if is_root_class? end
is_root_class?()
click to toggle source
# File lib/rethinker/document/polymorphic.rb, line 29 def is_root_class? self == root_class end
klass_from_attrs(attrs)
click to toggle source
# File lib/rethinker/document/polymorphic.rb, line 33 def klass_from_attrs(attrs) attrs['_type'].try(:constantize) || root_class end
type_value()
click to toggle source
# File lib/rethinker/document/polymorphic.rb, line 21 def type_value name end