module SimpleRepresenter::Definable::ClassMethods

Public Instance Methods

computed(field, **options) click to toggle source
# File lib/simple_representer/definable.rb, line 17
def computed(field, **options)
  definitions << Computed.new(field, default_options.merge(options))
end
default_options() click to toggle source
# File lib/simple_representer/definable.rb, line 29
def default_options
  @default_options ||= {}
end
defaults(**options) click to toggle source
# File lib/simple_representer/definable.rb, line 21
def defaults(**options)
  default_options.merge!(options)
end
definitions() click to toggle source
# File lib/simple_representer/definable.rb, line 25
def definitions
  @definitions ||= []
end
inherited(subclass) click to toggle source
Calls superclass method
# File lib/simple_representer/definable.rb, line 33
def inherited(subclass)
  super
  subclass.instance_variable_set('@definitions', instance_variable_get('@definitions').clone)
  subclass.instance_variable_set('@default_options', instance_variable_get('@default_options').clone)
end
property(field, **options) click to toggle source
# File lib/simple_representer/definable.rb, line 13
def property(field, **options)
  definitions << Property.new(field, default_options.merge(options))
end