module JSON::SchemaBuilder::Attribute

Protected Instance Methods

_array_attr(attr, values = []) click to toggle source
# File lib/json/schema_builder/attribute.rb, line 31
def _array_attr(attr, values = [])
  if values.empty?
    self.schema[attr] || []
  else
    self.schema[attr] ||= []
    _rename_array_values!(values)
    self.schema[attr] += values
    self.schema[attr].uniq!
    self.schema[attr]
  end
end
_attr(attr, value) click to toggle source
# File lib/json/schema_builder/attribute.rb, line 43
def _attr(attr, value)
  if value.nil?
    self.schema[attr]
  else
    self.schema[attr] = value
  end
end
_rename_array_values!(values) click to toggle source
# File lib/json/schema_builder/attribute.rb, line 51
def _rename_array_values!(values)
  values.each do |value|
    if value.class < Entity && value.name
      value.name = nil
      value.reset_fragment
    end
  end
end