class OpenApi::DSL::CombinedSchema
swagger.io/docs/specification/data-models/oneof-anyof-allof-not/ github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#schemaObject
Attributes
mode[RW]
processed[RW]
schemas[RW]
Public Class Methods
new(combined_schema)
click to toggle source
# File lib/oas_objs/combined_schema.rb, line 12 def initialize(combined_schema) combined_schema.delete_if { |_, v| v.nil? } self.mode = combined_schema.keys.first.to_s.camelize(:lower).to_sym self.schemas = combined_schema.values.first end
Public Instance Methods
process()
click to toggle source
# File lib/oas_objs/combined_schema.rb, line 18 def process self.processed = { mode => schemas.map do |schema| type = schema.is_a?(Hash) ? schema[:type] : schema schema = { } unless schema.is_a?(Hash) SchemaObj.new(type, schema).process end } end