class Protobuf::Field::FieldArray

def normalize(value)

def normalize(value)
  value = value.to_proto if value.respond_to?(:to_proto)
  fail TypeError, "Unacceptable value #{value} for field #{field.name} of type #{field.type_class}" unless field.acceptable?(value)
  if field.is_a?(::Protobuf::Field::EnumField)
    field.type_class.fetch(value)
  elsif field.is_a?(::Protobuf::Field::MessageField) && value.is_a?(field.type_class)
    value
  elsif field.is_a?(::Protobuf::Field::MessageField) && value.respond_to?(:to_hash)
    field.type_class.new(value.to_hash)
  else
    value
  end
end