1// Copyright 2021 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 v3.12.2 19// source: google/spanner/v1/type.proto 20 21package spanner 22 23import ( 24 reflect "reflect" 25 sync "sync" 26 27 _ "google.golang.org/genproto/googleapis/api/annotations" 28 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 29 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 30) 31 32const ( 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// `TypeCode` is used as part of [Type][google.spanner.v1.Type] to 40// indicate the type of a Cloud Spanner value. 41// 42// Each legal value of a type can be encoded to or decoded from a JSON 43// value, using the encodings described below. All Cloud Spanner values can 44// be `null`, regardless of type; `null`s are always encoded as a JSON 45// `null`. 46type TypeCode int32 47 48const ( 49 // Not specified. 50 TypeCode_TYPE_CODE_UNSPECIFIED TypeCode = 0 51 // Encoded as JSON `true` or `false`. 52 TypeCode_BOOL TypeCode = 1 53 // Encoded as `string`, in decimal format. 54 TypeCode_INT64 TypeCode = 2 55 // Encoded as `number`, or the strings `"NaN"`, `"Infinity"`, or 56 // `"-Infinity"`. 57 TypeCode_FLOAT64 TypeCode = 3 58 // Encoded as `string` in RFC 3339 timestamp format. The time zone 59 // must be present, and must be `"Z"`. 60 // 61 // If the schema has the column option 62 // `allow_commit_timestamp=true`, the placeholder string 63 // `"spanner.commit_timestamp()"` can be used to instruct the system 64 // to insert the commit timestamp associated with the transaction 65 // commit. 66 TypeCode_TIMESTAMP TypeCode = 4 67 // Encoded as `string` in RFC 3339 date format. 68 TypeCode_DATE TypeCode = 5 69 // Encoded as `string`. 70 TypeCode_STRING TypeCode = 6 71 // Encoded as a base64-encoded `string`, as described in RFC 4648, 72 // section 4. 73 TypeCode_BYTES TypeCode = 7 74 // Encoded as `list`, where the list elements are represented 75 // according to 76 // [array_element_type][google.spanner.v1.Type.array_element_type]. 77 TypeCode_ARRAY TypeCode = 8 78 // Encoded as `list`, where list element `i` is represented according 79 // to [struct_type.fields[i]][google.spanner.v1.StructType.fields]. 80 TypeCode_STRUCT TypeCode = 9 81 // Encoded as `string`, in decimal format or scientific notation format. 82 // <br>Decimal format: 83 // <br>`[+-]Digits[.[Digits]]` or 84 // <br>`[+-][Digits].Digits` 85 // 86 // Scientific notation: 87 // <br>`[+-]Digits[.[Digits]][ExponentIndicator[+-]Digits]` or 88 // <br>`[+-][Digits].Digits[ExponentIndicator[+-]Digits]` 89 // <br>(ExponentIndicator is `"e"` or `"E"`) 90 TypeCode_NUMERIC TypeCode = 10 91 // Encoded as a JSON-formatted 'string' as described in RFC 7159. The 92 // following rules will be applied when parsing JSON input: 93 // - Whitespace will be stripped from the document. 94 // - If a JSON object has duplicate keys, only the first key will be 95 // preserved. 96 // - Members of a JSON object are not guaranteed to have their order 97 // preserved. JSON array elements will have their order preserved. 98 TypeCode_JSON TypeCode = 11 99) 100 101// Enum value maps for TypeCode. 102var ( 103 TypeCode_name = map[int32]string{ 104 0: "TYPE_CODE_UNSPECIFIED", 105 1: "BOOL", 106 2: "INT64", 107 3: "FLOAT64", 108 4: "TIMESTAMP", 109 5: "DATE", 110 6: "STRING", 111 7: "BYTES", 112 8: "ARRAY", 113 9: "STRUCT", 114 10: "NUMERIC", 115 11: "JSON", 116 } 117 TypeCode_value = map[string]int32{ 118 "TYPE_CODE_UNSPECIFIED": 0, 119 "BOOL": 1, 120 "INT64": 2, 121 "FLOAT64": 3, 122 "TIMESTAMP": 4, 123 "DATE": 5, 124 "STRING": 6, 125 "BYTES": 7, 126 "ARRAY": 8, 127 "STRUCT": 9, 128 "NUMERIC": 10, 129 "JSON": 11, 130 } 131) 132 133func (x TypeCode) Enum() *TypeCode { 134 p := new(TypeCode) 135 *p = x 136 return p 137} 138 139func (x TypeCode) String() string { 140 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 141} 142 143func (TypeCode) Descriptor() protoreflect.EnumDescriptor { 144 return file_google_spanner_v1_type_proto_enumTypes[0].Descriptor() 145} 146 147func (TypeCode) Type() protoreflect.EnumType { 148 return &file_google_spanner_v1_type_proto_enumTypes[0] 149} 150 151func (x TypeCode) Number() protoreflect.EnumNumber { 152 return protoreflect.EnumNumber(x) 153} 154 155// Deprecated: Use TypeCode.Descriptor instead. 156func (TypeCode) EnumDescriptor() ([]byte, []int) { 157 return file_google_spanner_v1_type_proto_rawDescGZIP(), []int{0} 158} 159 160// `Type` indicates the type of a Cloud Spanner value, as might be stored in a 161// table cell or returned from an SQL query. 162type Type struct { 163 state protoimpl.MessageState 164 sizeCache protoimpl.SizeCache 165 unknownFields protoimpl.UnknownFields 166 167 // Required. The [TypeCode][google.spanner.v1.TypeCode] for this type. 168 Code TypeCode `protobuf:"varint,1,opt,name=code,proto3,enum=google.spanner.v1.TypeCode" json:"code,omitempty"` 169 // If [code][google.spanner.v1.Type.code] == [ARRAY][google.spanner.v1.TypeCode.ARRAY], then `array_element_type` 170 // is the type of the array elements. 171 ArrayElementType *Type `protobuf:"bytes,2,opt,name=array_element_type,json=arrayElementType,proto3" json:"array_element_type,omitempty"` 172 // If [code][google.spanner.v1.Type.code] == [STRUCT][google.spanner.v1.TypeCode.STRUCT], then `struct_type` 173 // provides type information for the struct's fields. 174 StructType *StructType `protobuf:"bytes,3,opt,name=struct_type,json=structType,proto3" json:"struct_type,omitempty"` 175} 176 177func (x *Type) Reset() { 178 *x = Type{} 179 if protoimpl.UnsafeEnabled { 180 mi := &file_google_spanner_v1_type_proto_msgTypes[0] 181 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 182 ms.StoreMessageInfo(mi) 183 } 184} 185 186func (x *Type) String() string { 187 return protoimpl.X.MessageStringOf(x) 188} 189 190func (*Type) ProtoMessage() {} 191 192func (x *Type) ProtoReflect() protoreflect.Message { 193 mi := &file_google_spanner_v1_type_proto_msgTypes[0] 194 if protoimpl.UnsafeEnabled && x != nil { 195 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 196 if ms.LoadMessageInfo() == nil { 197 ms.StoreMessageInfo(mi) 198 } 199 return ms 200 } 201 return mi.MessageOf(x) 202} 203 204// Deprecated: Use Type.ProtoReflect.Descriptor instead. 205func (*Type) Descriptor() ([]byte, []int) { 206 return file_google_spanner_v1_type_proto_rawDescGZIP(), []int{0} 207} 208 209func (x *Type) GetCode() TypeCode { 210 if x != nil { 211 return x.Code 212 } 213 return TypeCode_TYPE_CODE_UNSPECIFIED 214} 215 216func (x *Type) GetArrayElementType() *Type { 217 if x != nil { 218 return x.ArrayElementType 219 } 220 return nil 221} 222 223func (x *Type) GetStructType() *StructType { 224 if x != nil { 225 return x.StructType 226 } 227 return nil 228} 229 230// `StructType` defines the fields of a [STRUCT][google.spanner.v1.TypeCode.STRUCT] type. 231type StructType struct { 232 state protoimpl.MessageState 233 sizeCache protoimpl.SizeCache 234 unknownFields protoimpl.UnknownFields 235 236 // The list of fields that make up this struct. Order is 237 // significant, because values of this struct type are represented as 238 // lists, where the order of field values matches the order of 239 // fields in the [StructType][google.spanner.v1.StructType]. In turn, the order of fields 240 // matches the order of columns in a read request, or the order of 241 // fields in the `SELECT` clause of a query. 242 Fields []*StructType_Field `protobuf:"bytes,1,rep,name=fields,proto3" json:"fields,omitempty"` 243} 244 245func (x *StructType) Reset() { 246 *x = StructType{} 247 if protoimpl.UnsafeEnabled { 248 mi := &file_google_spanner_v1_type_proto_msgTypes[1] 249 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 250 ms.StoreMessageInfo(mi) 251 } 252} 253 254func (x *StructType) String() string { 255 return protoimpl.X.MessageStringOf(x) 256} 257 258func (*StructType) ProtoMessage() {} 259 260func (x *StructType) ProtoReflect() protoreflect.Message { 261 mi := &file_google_spanner_v1_type_proto_msgTypes[1] 262 if protoimpl.UnsafeEnabled && x != nil { 263 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 264 if ms.LoadMessageInfo() == nil { 265 ms.StoreMessageInfo(mi) 266 } 267 return ms 268 } 269 return mi.MessageOf(x) 270} 271 272// Deprecated: Use StructType.ProtoReflect.Descriptor instead. 273func (*StructType) Descriptor() ([]byte, []int) { 274 return file_google_spanner_v1_type_proto_rawDescGZIP(), []int{1} 275} 276 277func (x *StructType) GetFields() []*StructType_Field { 278 if x != nil { 279 return x.Fields 280 } 281 return nil 282} 283 284// Message representing a single field of a struct. 285type StructType_Field struct { 286 state protoimpl.MessageState 287 sizeCache protoimpl.SizeCache 288 unknownFields protoimpl.UnknownFields 289 290 // The name of the field. For reads, this is the column name. For 291 // SQL queries, it is the column alias (e.g., `"Word"` in the 292 // query `"SELECT 'hello' AS Word"`), or the column name (e.g., 293 // `"ColName"` in the query `"SELECT ColName FROM Table"`). Some 294 // columns might have an empty name (e.g., `"SELECT 295 // UPPER(ColName)"`). Note that a query result can contain 296 // multiple fields with the same name. 297 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 298 // The type of the field. 299 Type *Type `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"` 300} 301 302func (x *StructType_Field) Reset() { 303 *x = StructType_Field{} 304 if protoimpl.UnsafeEnabled { 305 mi := &file_google_spanner_v1_type_proto_msgTypes[2] 306 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 307 ms.StoreMessageInfo(mi) 308 } 309} 310 311func (x *StructType_Field) String() string { 312 return protoimpl.X.MessageStringOf(x) 313} 314 315func (*StructType_Field) ProtoMessage() {} 316 317func (x *StructType_Field) ProtoReflect() protoreflect.Message { 318 mi := &file_google_spanner_v1_type_proto_msgTypes[2] 319 if protoimpl.UnsafeEnabled && x != nil { 320 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 321 if ms.LoadMessageInfo() == nil { 322 ms.StoreMessageInfo(mi) 323 } 324 return ms 325 } 326 return mi.MessageOf(x) 327} 328 329// Deprecated: Use StructType_Field.ProtoReflect.Descriptor instead. 330func (*StructType_Field) Descriptor() ([]byte, []int) { 331 return file_google_spanner_v1_type_proto_rawDescGZIP(), []int{1, 0} 332} 333 334func (x *StructType_Field) GetName() string { 335 if x != nil { 336 return x.Name 337 } 338 return "" 339} 340 341func (x *StructType_Field) GetType() *Type { 342 if x != nil { 343 return x.Type 344 } 345 return nil 346} 347 348var File_google_spanner_v1_type_proto protoreflect.FileDescriptor 349 350var file_google_spanner_v1_type_proto_rawDesc = []byte{ 351 0x0a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 352 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 353 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x76, 354 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 355 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 356 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 357 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 358 0x22, 0xc3, 0x01, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x04, 0x63, 0x6f, 0x64, 359 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 360 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 361 0x43, 0x6f, 0x64, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 362 0x45, 0x0a, 0x12, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 363 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 364 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 365 0x54, 0x79, 0x70, 0x65, 0x52, 0x10, 0x61, 0x72, 0x72, 0x61, 0x79, 0x45, 0x6c, 0x65, 0x6d, 0x65, 366 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3e, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 367 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x6f, 368 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 369 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x75, 370 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x93, 0x01, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x75, 0x63, 371 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 372 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 373 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 374 0x54, 0x79, 0x70, 0x65, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 375 0x64, 0x73, 0x1a, 0x48, 0x0a, 0x05, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 376 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 377 0x2b, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 378 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x76, 379 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x2a, 0xa5, 0x01, 0x0a, 380 0x08, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x54, 0x59, 0x50, 381 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 382 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x01, 0x12, 0x09, 383 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x4c, 0x4f, 384 0x41, 0x54, 0x36, 0x34, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 385 0x41, 0x4d, 0x50, 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x41, 0x54, 0x45, 0x10, 0x05, 0x12, 386 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x06, 0x12, 0x09, 0x0a, 0x05, 0x42, 387 0x59, 0x54, 0x45, 0x53, 0x10, 0x07, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x52, 0x52, 0x41, 0x59, 0x10, 388 0x08, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x55, 0x43, 0x54, 0x10, 0x09, 0x12, 0x0b, 0x0a, 389 0x07, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x49, 0x43, 0x10, 0x0a, 0x12, 0x08, 0x0a, 0x04, 0x4a, 0x53, 390 0x4f, 0x4e, 0x10, 0x0b, 0x42, 0xaf, 0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 391 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x42, 0x09, 392 0x54, 0x79, 0x70, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x38, 0x67, 0x6f, 0x6f, 393 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 394 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 395 0x69, 0x73, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2f, 0x76, 0x31, 0x3b, 0x73, 0x70, 396 0x61, 0x6e, 0x6e, 0x65, 0x72, 0xaa, 0x02, 0x17, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 397 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x53, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x56, 0x31, 0xca, 398 0x02, 0x17, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x53, 399 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5c, 0x56, 0x31, 0xea, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 400 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x53, 0x70, 0x61, 0x6e, 0x6e, 401 0x65, 0x72, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 402} 403 404var ( 405 file_google_spanner_v1_type_proto_rawDescOnce sync.Once 406 file_google_spanner_v1_type_proto_rawDescData = file_google_spanner_v1_type_proto_rawDesc 407) 408 409func file_google_spanner_v1_type_proto_rawDescGZIP() []byte { 410 file_google_spanner_v1_type_proto_rawDescOnce.Do(func() { 411 file_google_spanner_v1_type_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_spanner_v1_type_proto_rawDescData) 412 }) 413 return file_google_spanner_v1_type_proto_rawDescData 414} 415 416var file_google_spanner_v1_type_proto_enumTypes = make([]protoimpl.EnumInfo, 1) 417var file_google_spanner_v1_type_proto_msgTypes = make([]protoimpl.MessageInfo, 3) 418var file_google_spanner_v1_type_proto_goTypes = []interface{}{ 419 (TypeCode)(0), // 0: google.spanner.v1.TypeCode 420 (*Type)(nil), // 1: google.spanner.v1.Type 421 (*StructType)(nil), // 2: google.spanner.v1.StructType 422 (*StructType_Field)(nil), // 3: google.spanner.v1.StructType.Field 423} 424var file_google_spanner_v1_type_proto_depIdxs = []int32{ 425 0, // 0: google.spanner.v1.Type.code:type_name -> google.spanner.v1.TypeCode 426 1, // 1: google.spanner.v1.Type.array_element_type:type_name -> google.spanner.v1.Type 427 2, // 2: google.spanner.v1.Type.struct_type:type_name -> google.spanner.v1.StructType 428 3, // 3: google.spanner.v1.StructType.fields:type_name -> google.spanner.v1.StructType.Field 429 1, // 4: google.spanner.v1.StructType.Field.type:type_name -> google.spanner.v1.Type 430 5, // [5:5] is the sub-list for method output_type 431 5, // [5:5] is the sub-list for method input_type 432 5, // [5:5] is the sub-list for extension type_name 433 5, // [5:5] is the sub-list for extension extendee 434 0, // [0:5] is the sub-list for field type_name 435} 436 437func init() { file_google_spanner_v1_type_proto_init() } 438func file_google_spanner_v1_type_proto_init() { 439 if File_google_spanner_v1_type_proto != nil { 440 return 441 } 442 if !protoimpl.UnsafeEnabled { 443 file_google_spanner_v1_type_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 444 switch v := v.(*Type); i { 445 case 0: 446 return &v.state 447 case 1: 448 return &v.sizeCache 449 case 2: 450 return &v.unknownFields 451 default: 452 return nil 453 } 454 } 455 file_google_spanner_v1_type_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 456 switch v := v.(*StructType); i { 457 case 0: 458 return &v.state 459 case 1: 460 return &v.sizeCache 461 case 2: 462 return &v.unknownFields 463 default: 464 return nil 465 } 466 } 467 file_google_spanner_v1_type_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 468 switch v := v.(*StructType_Field); i { 469 case 0: 470 return &v.state 471 case 1: 472 return &v.sizeCache 473 case 2: 474 return &v.unknownFields 475 default: 476 return nil 477 } 478 } 479 } 480 type x struct{} 481 out := protoimpl.TypeBuilder{ 482 File: protoimpl.DescBuilder{ 483 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 484 RawDescriptor: file_google_spanner_v1_type_proto_rawDesc, 485 NumEnums: 1, 486 NumMessages: 3, 487 NumExtensions: 0, 488 NumServices: 0, 489 }, 490 GoTypes: file_google_spanner_v1_type_proto_goTypes, 491 DependencyIndexes: file_google_spanner_v1_type_proto_depIdxs, 492 EnumInfos: file_google_spanner_v1_type_proto_enumTypes, 493 MessageInfos: file_google_spanner_v1_type_proto_msgTypes, 494 }.Build() 495 File_google_spanner_v1_type_proto = out.File 496 file_google_spanner_v1_type_proto_rawDesc = nil 497 file_google_spanner_v1_type_proto_goTypes = nil 498 file_google_spanner_v1_type_proto_depIdxs = nil 499} 500