Sha256: 7beca361b17b8441d5f0e569ee596f9e42cd57f95e7abc0e1d49539337185078
Contents?: true
Size: 1.14 KB
Versions: 1
Compression:
Stored size: 1.14 KB
Contents
module OasParser class Parameter include OasParser::RawAccessor raw_keys :name, :in, :description, :style, :enum, :schema, :minimum, :maximum, :required attr_accessor :owner, :raw def initialize(owner, raw) @owner = owner @raw = raw end def type raw['type'] || (schema ? schema['type'] : nil) end def format raw['format'] || (schema ? schema['format'] : nil) end def array? type == 'array' end def object? type == 'object' end def collection? array? || object? end def items schema['items'] end def example raw['example'] || (schema ? schema['example'] : nil) end def default raw['default'] || (schema ? schema['default'] : nil) end def properties return convert_property_schema_to_properties(raw['properties']) if object? return convert_property_schema_to_properties(items) if array? nil end def convert_property_schema_to_properties(schema) schema.map do |name, definition| OasParser::Property.new(self, raw, name, definition) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
oas_parser-0.7.0 | lib/oas_parser/parameter.rb |