Module: Jasonette::Properties::ClassMethods

Defined in:
lib/jasonette/core/properties.rb

Instance Method Summary collapse

Instance Method Details

#propertiesObject



37
38
39
# File 'lib/jasonette/core/properties.rb', line 37

def properties
  PropertyEnum.new @properties ||= {}
end

#property(name, *types) ⇒ Object



32
33
34
35
# File 'lib/jasonette/core/properties.rb', line 32

def property name, *types
  types << :is_many if DEFAULT_IS_ARRAY.include?(name)
  properties.merge! "#{name}".to_sym => TYPES.map { |type| { type => types.include?(type) } }.reduce({}, :merge)
end

#super_propertyObject



28
29
30
# File 'lib/jasonette/core/properties.rb', line 28

def super_property
  properties.merge!(superclass.properties)
end