module TypedParameter::Swagger::TypeGenerator

Public Class Methods

array_generate(type) click to toggle source
# File lib/typed_parameter/swagger/type_generator.rb, line 19
def array_generate(type)
  { type: :array, items: generate(type[0]) } 
end
generate(type) click to toggle source
# File lib/typed_parameter/swagger/type_generator.rb, line 5
def generate(type)
  return array_generate(type) if type.is_a? Array
  return hash_generate(type) if type.is_a? Hash

  swagger_type = Swagger::Types[type.name.to_sym]
  swagger_type&.value || { ref: type }
end
hash_generate(hash) click to toggle source
# File lib/typed_parameter/swagger/type_generator.rb, line 13
def hash_generate(hash)
  h = hash.transform_values { |value| generate(value) }

  { type: :object, properties: h }
end