Sha256: c3163e7575aa3d42d2a281b9f9c01e4937e9ef13752c684b54b2f001ce2eef3f
Contents?: true
Size: 1.2 KB
Versions: 4
Compression:
Stored size: 1.2 KB
Contents
module OasParser class Property < AbstractAttribute raw_keys :description, :type, :format, :minimum, :maximum, :example, :default, :items attr_accessor :owner, :schema, :raw attr_writer :name def initialize(owner, schema, name, raw) @owner = owner @name = name @schema = schema @raw = raw end def required return true if raw['required'] return false unless schema['required'] schema['required'].include? name end def convert_property_schema_to_properties(schema) if schema['oneOf'] schema['oneOf'].map do |subschema| subschema['properties'] = convert_property_schema_to_properties(subschema) subschema['subschema_property'] = true subschema end elsif schema['subschema_property'] schema = schema['properties'] if schema['properties'] schema.map do |definition| OasParser::Property.new(self, raw, definition.name, definition) end else schema = schema['properties'] if schema['properties'] schema.map do |key, definition| OasParser::Property.new(self, raw, key, definition) end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
oas_parser-0.12.0 | lib/oas_parser/property.rb |
oas_parser-0.11.2 | lib/oas_parser/property.rb |
oas_parser-0.11.1 | lib/oas_parser/property.rb |
oas_parser-0.11.0 | lib/oas_parser/property.rb |