class ServiceContract::Avro::Type
Public Class Methods
build(definition)
click to toggle source
# File lib/service_contract/avro/type.rb, line 144 def build(definition) type = type_string(definition) case type when "array" ArrayType.new(definition) when "record" RecordType.new(definition) when "union" UnionType.new(definition) when "enum" EnumType.new(definition) when "string" StringType.new when "int" IntegerType.new when "float" FloatType.new when "boolean" BooleanType.new when "null" NullType.new when "map" MapType.new(definition) else raise "unknown type: #{type}" end end
type_string(definition)
click to toggle source
# File lib/service_contract/avro/type.rb, line 172 def type_string(definition) type_string = definition.type type_string = type_string.type_sym.to_s if type_string.respond_to?(:type_sym) type_string end