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