in codegen/projections/rails_json/lib/rails_json/validators.rb [551:577]
def self.validate!(input, context:)
case input
when Types::MyUnion::StringValue
Seahorse::Validator.validate!(input.__getobj__, ::String, context: context)
when Types::MyUnion::BooleanValue
Seahorse::Validator.validate!(input.__getobj__, ::TrueClass, ::FalseClass, context: context)
when Types::MyUnion::NumberValue
Seahorse::Validator.validate!(input.__getobj__, ::Integer, context: context)
when Types::MyUnion::BlobValue
Seahorse::Validator.validate!(input.__getobj__, ::String, context: context)
when Types::MyUnion::TimestampValue
Seahorse::Validator.validate!(input.__getobj__, ::Time, context: context)
when Types::MyUnion::EnumValue
Seahorse::Validator.validate!(input.__getobj__, ::String, context: context)
when Types::MyUnion::ListValue
Validators::StringList.validate!(input.__getobj__, context: context) unless input.__getobj__.nil?
when Types::MyUnion::MapValue
Validators::StringMap.validate!(input.__getobj__, context: context) unless input.__getobj__.nil?
when Types::MyUnion::StructureValue
Validators::GreetingStruct.validate!(input.__getobj__, context: context) unless input.__getobj__.nil?
else
raise ArgumentError,
"Expected #{context} to be a union member of "\
"Types::MyUnion, got #{input.class}."
end
end