field_behavior.pb.go raw

   1  // Copyright 2025 Google LLC
   2  //
   3  // Licensed under the Apache License, Version 2.0 (the "License");
   4  // you may not use this file except in compliance with the License.
   5  // You may obtain a copy of the License at
   6  //
   7  //     http://www.apache.org/licenses/LICENSE-2.0
   8  //
   9  // Unless required by applicable law or agreed to in writing, software
  10  // distributed under the License is distributed on an "AS IS" BASIS,
  11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12  // See the License for the specific language governing permissions and
  13  // limitations under the License.
  14  
  15  // Code generated by protoc-gen-go. DO NOT EDIT.
  16  // versions:
  17  // 	protoc-gen-go v1.26.0
  18  // 	protoc        v4.24.4
  19  // source: google/api/field_behavior.proto
  20  
  21  package annotations
  22  
  23  import (
  24  	reflect "reflect"
  25  	sync "sync"
  26  
  27  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
  28  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
  29  	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
  30  )
  31  
  32  const (
  33  	// Verify that this generated code is sufficiently up-to-date.
  34  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
  35  	// Verify that runtime/protoimpl is sufficiently up-to-date.
  36  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
  37  )
  38  
  39  // An indicator of the behavior of a given field (for example, that a field
  40  // is required in requests, or given as output but ignored as input).
  41  // This **does not** change the behavior in protocol buffers itself; it only
  42  // denotes the behavior and may affect how API tooling handles the field.
  43  //
  44  // Note: This enum **may** receive new values in the future.
  45  type FieldBehavior int32
  46  
  47  const (
  48  	// Conventional default for enums. Do not use this.
  49  	FieldBehavior_FIELD_BEHAVIOR_UNSPECIFIED FieldBehavior = 0
  50  	// Specifically denotes a field as optional.
  51  	// While all fields in protocol buffers are optional, this may be specified
  52  	// for emphasis if appropriate.
  53  	FieldBehavior_OPTIONAL FieldBehavior = 1
  54  	// Denotes a field as required.
  55  	// This indicates that the field **must** be provided as part of the request,
  56  	// and failure to do so will cause an error (usually `INVALID_ARGUMENT`).
  57  	FieldBehavior_REQUIRED FieldBehavior = 2
  58  	// Denotes a field as output only.
  59  	// This indicates that the field is provided in responses, but including the
  60  	// field in a request does nothing (the server *must* ignore it and
  61  	// *must not* throw an error as a result of the field's presence).
  62  	FieldBehavior_OUTPUT_ONLY FieldBehavior = 3
  63  	// Denotes a field as input only.
  64  	// This indicates that the field is provided in requests, and the
  65  	// corresponding field is not included in output.
  66  	FieldBehavior_INPUT_ONLY FieldBehavior = 4
  67  	// Denotes a field as immutable.
  68  	// This indicates that the field may be set once in a request to create a
  69  	// resource, but may not be changed thereafter.
  70  	FieldBehavior_IMMUTABLE FieldBehavior = 5
  71  	// Denotes that a (repeated) field is an unordered list.
  72  	// This indicates that the service may provide the elements of the list
  73  	// in any arbitrary  order, rather than the order the user originally
  74  	// provided. Additionally, the list's order may or may not be stable.
  75  	FieldBehavior_UNORDERED_LIST FieldBehavior = 6
  76  	// Denotes that this field returns a non-empty default value if not set.
  77  	// This indicates that if the user provides the empty value in a request,
  78  	// a non-empty value will be returned. The user will not be aware of what
  79  	// non-empty value to expect.
  80  	FieldBehavior_NON_EMPTY_DEFAULT FieldBehavior = 7
  81  	// Denotes that the field in a resource (a message annotated with
  82  	// google.api.resource) is used in the resource name to uniquely identify the
  83  	// resource. For AIP-compliant APIs, this should only be applied to the
  84  	// `name` field on the resource.
  85  	//
  86  	// This behavior should not be applied to references to other resources within
  87  	// the message.
  88  	//
  89  	// The identifier field of resources often have different field behavior
  90  	// depending on the request it is embedded in (e.g. for Create methods name
  91  	// is optional and unused, while for Update methods it is required). Instead
  92  	// of method-specific annotations, only `IDENTIFIER` is required.
  93  	FieldBehavior_IDENTIFIER FieldBehavior = 8
  94  )
  95  
  96  // Enum value maps for FieldBehavior.
  97  var (
  98  	FieldBehavior_name = map[int32]string{
  99  		0: "FIELD_BEHAVIOR_UNSPECIFIED",
 100  		1: "OPTIONAL",
 101  		2: "REQUIRED",
 102  		3: "OUTPUT_ONLY",
 103  		4: "INPUT_ONLY",
 104  		5: "IMMUTABLE",
 105  		6: "UNORDERED_LIST",
 106  		7: "NON_EMPTY_DEFAULT",
 107  		8: "IDENTIFIER",
 108  	}
 109  	FieldBehavior_value = map[string]int32{
 110  		"FIELD_BEHAVIOR_UNSPECIFIED": 0,
 111  		"OPTIONAL":                   1,
 112  		"REQUIRED":                   2,
 113  		"OUTPUT_ONLY":                3,
 114  		"INPUT_ONLY":                 4,
 115  		"IMMUTABLE":                  5,
 116  		"UNORDERED_LIST":             6,
 117  		"NON_EMPTY_DEFAULT":          7,
 118  		"IDENTIFIER":                 8,
 119  	}
 120  )
 121  
 122  func (x FieldBehavior) Enum() *FieldBehavior {
 123  	p := new(FieldBehavior)
 124  	*p = x
 125  	return p
 126  }
 127  
 128  func (x FieldBehavior) String() string {
 129  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
 130  }
 131  
 132  func (FieldBehavior) Descriptor() protoreflect.EnumDescriptor {
 133  	return file_google_api_field_behavior_proto_enumTypes[0].Descriptor()
 134  }
 135  
 136  func (FieldBehavior) Type() protoreflect.EnumType {
 137  	return &file_google_api_field_behavior_proto_enumTypes[0]
 138  }
 139  
 140  func (x FieldBehavior) Number() protoreflect.EnumNumber {
 141  	return protoreflect.EnumNumber(x)
 142  }
 143  
 144  // Deprecated: Use FieldBehavior.Descriptor instead.
 145  func (FieldBehavior) EnumDescriptor() ([]byte, []int) {
 146  	return file_google_api_field_behavior_proto_rawDescGZIP(), []int{0}
 147  }
 148  
 149  var file_google_api_field_behavior_proto_extTypes = []protoimpl.ExtensionInfo{
 150  	{
 151  		ExtendedType:  (*descriptorpb.FieldOptions)(nil),
 152  		ExtensionType: ([]FieldBehavior)(nil),
 153  		Field:         1052,
 154  		Name:          "google.api.field_behavior",
 155  		Tag:           "varint,1052,rep,name=field_behavior,enum=google.api.FieldBehavior",
 156  		Filename:      "google/api/field_behavior.proto",
 157  	},
 158  }
 159  
 160  // Extension fields to descriptorpb.FieldOptions.
 161  var (
 162  	// A designation of a specific field behavior (required, output only, etc.)
 163  	// in protobuf messages.
 164  	//
 165  	// Examples:
 166  	//
 167  	//	string name = 1 [(google.api.field_behavior) = REQUIRED];
 168  	//	State state = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
 169  	//	google.protobuf.Duration ttl = 1
 170  	//	  [(google.api.field_behavior) = INPUT_ONLY];
 171  	//	google.protobuf.Timestamp expire_time = 1
 172  	//	  [(google.api.field_behavior) = OUTPUT_ONLY,
 173  	//	   (google.api.field_behavior) = IMMUTABLE];
 174  	//
 175  	// repeated google.api.FieldBehavior field_behavior = 1052;
 176  	E_FieldBehavior = &file_google_api_field_behavior_proto_extTypes[0]
 177  )
 178  
 179  var File_google_api_field_behavior_proto protoreflect.FileDescriptor
 180  
 181  var file_google_api_field_behavior_proto_rawDesc = []byte{
 182  	0x0a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65,
 183  	0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
 184  	0x6f, 0x12, 0x0a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x1a, 0x20, 0x67,
 185  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64,
 186  	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2a,
 187  	0xb6, 0x01, 0x0a, 0x0d, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f,
 188  	0x72, 0x12, 0x1e, 0x0a, 0x1a, 0x46, 0x49, 0x45, 0x4c, 0x44, 0x5f, 0x42, 0x45, 0x48, 0x41, 0x56,
 189  	0x49, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
 190  	0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12,
 191  	0x0c, 0x0a, 0x08, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0f, 0x0a,
 192  	0x0b, 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x03, 0x12, 0x0e,
 193  	0x0a, 0x0a, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x04, 0x12, 0x0d,
 194  	0x0a, 0x09, 0x49, 0x4d, 0x4d, 0x55, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x05, 0x12, 0x12, 0x0a,
 195  	0x0e, 0x55, 0x4e, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x45, 0x44, 0x5f, 0x4c, 0x49, 0x53, 0x54, 0x10,
 196  	0x06, 0x12, 0x15, 0x0a, 0x11, 0x4e, 0x4f, 0x4e, 0x5f, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x5f, 0x44,
 197  	0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x07, 0x12, 0x0e, 0x0a, 0x0a, 0x49, 0x44, 0x45, 0x4e,
 198  	0x54, 0x49, 0x46, 0x49, 0x45, 0x52, 0x10, 0x08, 0x3a, 0x64, 0x0a, 0x0e, 0x66, 0x69, 0x65, 0x6c,
 199  	0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f,
 200  	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65,
 201  	0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x9c, 0x08, 0x20, 0x03, 0x28, 0x0e,
 202  	0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x46, 0x69,
 203  	0x65, 0x6c, 0x64, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x42, 0x02, 0x10, 0x00, 0x52,
 204  	0x0d, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x42, 0x70,
 205  	0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69,
 206  	0x42, 0x12, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x50,
 207  	0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x41, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67,
 208  	0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f,
 209  	0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x61, 0x70,
 210  	0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3b, 0x61, 0x6e,
 211  	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0xa2, 0x02, 0x04, 0x47, 0x41, 0x50, 0x49,
 212  	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 213  }
 214  
 215  var (
 216  	file_google_api_field_behavior_proto_rawDescOnce sync.Once
 217  	file_google_api_field_behavior_proto_rawDescData = file_google_api_field_behavior_proto_rawDesc
 218  )
 219  
 220  func file_google_api_field_behavior_proto_rawDescGZIP() []byte {
 221  	file_google_api_field_behavior_proto_rawDescOnce.Do(func() {
 222  		file_google_api_field_behavior_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_api_field_behavior_proto_rawDescData)
 223  	})
 224  	return file_google_api_field_behavior_proto_rawDescData
 225  }
 226  
 227  var file_google_api_field_behavior_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
 228  var file_google_api_field_behavior_proto_goTypes = []interface{}{
 229  	(FieldBehavior)(0),                // 0: google.api.FieldBehavior
 230  	(*descriptorpb.FieldOptions)(nil), // 1: google.protobuf.FieldOptions
 231  }
 232  var file_google_api_field_behavior_proto_depIdxs = []int32{
 233  	1, // 0: google.api.field_behavior:extendee -> google.protobuf.FieldOptions
 234  	0, // 1: google.api.field_behavior:type_name -> google.api.FieldBehavior
 235  	2, // [2:2] is the sub-list for method output_type
 236  	2, // [2:2] is the sub-list for method input_type
 237  	1, // [1:2] is the sub-list for extension type_name
 238  	0, // [0:1] is the sub-list for extension extendee
 239  	0, // [0:0] is the sub-list for field type_name
 240  }
 241  
 242  func init() { file_google_api_field_behavior_proto_init() }
 243  func file_google_api_field_behavior_proto_init() {
 244  	if File_google_api_field_behavior_proto != nil {
 245  		return
 246  	}
 247  	type x struct{}
 248  	out := protoimpl.TypeBuilder{
 249  		File: protoimpl.DescBuilder{
 250  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 251  			RawDescriptor: file_google_api_field_behavior_proto_rawDesc,
 252  			NumEnums:      1,
 253  			NumMessages:   0,
 254  			NumExtensions: 1,
 255  			NumServices:   0,
 256  		},
 257  		GoTypes:           file_google_api_field_behavior_proto_goTypes,
 258  		DependencyIndexes: file_google_api_field_behavior_proto_depIdxs,
 259  		EnumInfos:         file_google_api_field_behavior_proto_enumTypes,
 260  		ExtensionInfos:    file_google_api_field_behavior_proto_extTypes,
 261  	}.Build()
 262  	File_google_api_field_behavior_proto = out.File
 263  	file_google_api_field_behavior_proto_rawDesc = nil
 264  	file_google_api_field_behavior_proto_goTypes = nil
 265  	file_google_api_field_behavior_proto_depIdxs = nil
 266  }
 267