// Copyright 2024 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. edition = "2023"; package goproto.protoc.protoeditions; import "google/protobuf/go_features.proto"; option go_package = "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/protoeditions"; option features.enum_type = CLOSED; // EnumType1 comment. enum EnumType1 { // EnumType1_ONE comment. ONE = 1; // EnumType1_TWO comment. TWO = 2; } enum EnumType2 { option allow_alias = true; duplicate1 = 1; duplicate2 = 1; reserved RESERVED1; reserved RESERVED2; reserved 2, 3; } message EnumContainerMessage1 { EnumType2 default_duplicate1 = 1 [default = duplicate1]; EnumType2 default_duplicate2 = 2 [default = duplicate2]; // NestedEnumType1A comment. enum NestedEnumType1A { // NestedEnumType1A_VALUE comment. NESTED_1A_VALUE = 0; } enum NestedEnumType1B { NESTED_1B_VALUE = 0; } message EnumContainerMessage2 { // NestedEnumType2A comment. enum NestedEnumType2A { // NestedEnumType2A_VALUE comment. NESTED_2A_VALUE = 0; } enum NestedEnumType2B { NESTED_2B_VALUE = 0; } } } enum LegacyUnmarshalJSONTest { option features.(pb.go).legacy_unmarshal_json_enum = true; FOO = 0; BAR = 1; BAZ = 4; }