Sha256: 49b8b1a1bc07653911f36b303bba1879e8c4eb7ae935e7aa7a84739f041c590d
Contents?: true
Size: 1.3 KB
Versions: 2
Compression:
Stored size: 1.3 KB
Contents
# frozen_string_literal: true module Openapi3Parser module NodeFactory module ParameterLike def default_explode context.input["style"] == "form" end def schema_factory(context) factory = NodeFactory::OptionalReference.new(NodeFactory::Schema) factory.call(context) end def examples_factory(context) factory = NodeFactory::OptionalReference.new(NodeFactory::Schema) NodeFactory::Map.new(context, default: nil, value_factory: factory) end def content_factory(context) NodeFactory::Map.new(context, default: nil, value_factory: NodeFactory::MediaType, validate: method(:validate_content)) end def validate_content(validatable) return if validatable.input.size == 1 validatable.add_error("Must only have one item") end end end end # These are in the footer as a cyclic dependency can stop this module loading require "openapi3_parser/node_factory/optional_reference" require "openapi3_parser/node_factory/map" require "openapi3_parser/node_factory/schema" require "openapi3_parser/node_factory/example" require "openapi3_parser/node_factory/media_type"
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
openapi3_parser-0.5.1 | lib/openapi3_parser/node_factory/parameter_like.rb |
openapi3_parser-0.5.0 | lib/openapi3_parser/node_factory/parameter_like.rb |