1// Messages describing APK Set's table of contents (toc.pb entry). 2// Please be advised that the ultimate source is at 3// https://github.com/google/bundletool/tree/master/src/main/proto 4// so you have been warned. 5 6// Code generated by protoc-gen-go. DO NOT EDIT. 7// versions: 8// protoc-gen-go v1.26.0 9// protoc v3.9.1 10// source: targeting.proto 11 12package bundle_proto 13 14import ( 15 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 16 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 17 reflect "reflect" 18 sync "sync" 19) 20 21const ( 22 // Verify that this generated code is sufficiently up-to-date. 23 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 24 // Verify that runtime/protoimpl is sufficiently up-to-date. 25 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 26) 27 28type ScreenDensity_DensityAlias int32 29 30const ( 31 ScreenDensity_DENSITY_UNSPECIFIED ScreenDensity_DensityAlias = 0 32 ScreenDensity_NODPI ScreenDensity_DensityAlias = 1 33 ScreenDensity_LDPI ScreenDensity_DensityAlias = 2 34 ScreenDensity_MDPI ScreenDensity_DensityAlias = 3 35 ScreenDensity_TVDPI ScreenDensity_DensityAlias = 4 36 ScreenDensity_HDPI ScreenDensity_DensityAlias = 5 37 ScreenDensity_XHDPI ScreenDensity_DensityAlias = 6 38 ScreenDensity_XXHDPI ScreenDensity_DensityAlias = 7 39 ScreenDensity_XXXHDPI ScreenDensity_DensityAlias = 8 40) 41 42// Enum value maps for ScreenDensity_DensityAlias. 43var ( 44 ScreenDensity_DensityAlias_name = map[int32]string{ 45 0: "DENSITY_UNSPECIFIED", 46 1: "NODPI", 47 2: "LDPI", 48 3: "MDPI", 49 4: "TVDPI", 50 5: "HDPI", 51 6: "XHDPI", 52 7: "XXHDPI", 53 8: "XXXHDPI", 54 } 55 ScreenDensity_DensityAlias_value = map[string]int32{ 56 "DENSITY_UNSPECIFIED": 0, 57 "NODPI": 1, 58 "LDPI": 2, 59 "MDPI": 3, 60 "TVDPI": 4, 61 "HDPI": 5, 62 "XHDPI": 6, 63 "XXHDPI": 7, 64 "XXXHDPI": 8, 65 } 66) 67 68func (x ScreenDensity_DensityAlias) Enum() *ScreenDensity_DensityAlias { 69 p := new(ScreenDensity_DensityAlias) 70 *p = x 71 return p 72} 73 74func (x ScreenDensity_DensityAlias) String() string { 75 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 76} 77 78func (ScreenDensity_DensityAlias) Descriptor() protoreflect.EnumDescriptor { 79 return file_targeting_proto_enumTypes[0].Descriptor() 80} 81 82func (ScreenDensity_DensityAlias) Type() protoreflect.EnumType { 83 return &file_targeting_proto_enumTypes[0] 84} 85 86func (x ScreenDensity_DensityAlias) Number() protoreflect.EnumNumber { 87 return protoreflect.EnumNumber(x) 88} 89 90// Deprecated: Use ScreenDensity_DensityAlias.Descriptor instead. 91func (ScreenDensity_DensityAlias) EnumDescriptor() ([]byte, []int) { 92 return file_targeting_proto_rawDescGZIP(), []int{4, 0} 93} 94 95type TextureCompressionFormat_TextureCompressionFormatAlias int32 96 97const ( 98 TextureCompressionFormat_UNSPECIFIED_TEXTURE_COMPRESSION_FORMAT TextureCompressionFormat_TextureCompressionFormatAlias = 0 99 TextureCompressionFormat_ETC1_RGB8 TextureCompressionFormat_TextureCompressionFormatAlias = 1 100 TextureCompressionFormat_PALETTED TextureCompressionFormat_TextureCompressionFormatAlias = 2 101 TextureCompressionFormat_THREE_DC TextureCompressionFormat_TextureCompressionFormatAlias = 3 102 TextureCompressionFormat_ATC TextureCompressionFormat_TextureCompressionFormatAlias = 4 103 TextureCompressionFormat_LATC TextureCompressionFormat_TextureCompressionFormatAlias = 5 104 TextureCompressionFormat_DXT1 TextureCompressionFormat_TextureCompressionFormatAlias = 6 105 TextureCompressionFormat_S3TC TextureCompressionFormat_TextureCompressionFormatAlias = 7 106 TextureCompressionFormat_PVRTC TextureCompressionFormat_TextureCompressionFormatAlias = 8 107 TextureCompressionFormat_ASTC TextureCompressionFormat_TextureCompressionFormatAlias = 9 108 TextureCompressionFormat_ETC2 TextureCompressionFormat_TextureCompressionFormatAlias = 10 109) 110 111// Enum value maps for TextureCompressionFormat_TextureCompressionFormatAlias. 112var ( 113 TextureCompressionFormat_TextureCompressionFormatAlias_name = map[int32]string{ 114 0: "UNSPECIFIED_TEXTURE_COMPRESSION_FORMAT", 115 1: "ETC1_RGB8", 116 2: "PALETTED", 117 3: "THREE_DC", 118 4: "ATC", 119 5: "LATC", 120 6: "DXT1", 121 7: "S3TC", 122 8: "PVRTC", 123 9: "ASTC", 124 10: "ETC2", 125 } 126 TextureCompressionFormat_TextureCompressionFormatAlias_value = map[string]int32{ 127 "UNSPECIFIED_TEXTURE_COMPRESSION_FORMAT": 0, 128 "ETC1_RGB8": 1, 129 "PALETTED": 2, 130 "THREE_DC": 3, 131 "ATC": 4, 132 "LATC": 5, 133 "DXT1": 6, 134 "S3TC": 7, 135 "PVRTC": 8, 136 "ASTC": 9, 137 "ETC2": 10, 138 } 139) 140 141func (x TextureCompressionFormat_TextureCompressionFormatAlias) Enum() *TextureCompressionFormat_TextureCompressionFormatAlias { 142 p := new(TextureCompressionFormat_TextureCompressionFormatAlias) 143 *p = x 144 return p 145} 146 147func (x TextureCompressionFormat_TextureCompressionFormatAlias) String() string { 148 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 149} 150 151func (TextureCompressionFormat_TextureCompressionFormatAlias) Descriptor() protoreflect.EnumDescriptor { 152 return file_targeting_proto_enumTypes[1].Descriptor() 153} 154 155func (TextureCompressionFormat_TextureCompressionFormatAlias) Type() protoreflect.EnumType { 156 return &file_targeting_proto_enumTypes[1] 157} 158 159func (x TextureCompressionFormat_TextureCompressionFormatAlias) Number() protoreflect.EnumNumber { 160 return protoreflect.EnumNumber(x) 161} 162 163// Deprecated: Use TextureCompressionFormat_TextureCompressionFormatAlias.Descriptor instead. 164func (TextureCompressionFormat_TextureCompressionFormatAlias) EnumDescriptor() ([]byte, []int) { 165 return file_targeting_proto_rawDescGZIP(), []int{10, 0} 166} 167 168type Abi_AbiAlias int32 169 170const ( 171 Abi_UNSPECIFIED_CPU_ARCHITECTURE Abi_AbiAlias = 0 172 Abi_ARMEABI Abi_AbiAlias = 1 173 Abi_ARMEABI_V7A Abi_AbiAlias = 2 174 Abi_ARM64_V8A Abi_AbiAlias = 3 175 Abi_X86 Abi_AbiAlias = 4 176 Abi_X86_64 Abi_AbiAlias = 5 177 Abi_MIPS Abi_AbiAlias = 6 178 Abi_MIPS64 Abi_AbiAlias = 7 179) 180 181// Enum value maps for Abi_AbiAlias. 182var ( 183 Abi_AbiAlias_name = map[int32]string{ 184 0: "UNSPECIFIED_CPU_ARCHITECTURE", 185 1: "ARMEABI", 186 2: "ARMEABI_V7A", 187 3: "ARM64_V8A", 188 4: "X86", 189 5: "X86_64", 190 6: "MIPS", 191 7: "MIPS64", 192 } 193 Abi_AbiAlias_value = map[string]int32{ 194 "UNSPECIFIED_CPU_ARCHITECTURE": 0, 195 "ARMEABI": 1, 196 "ARMEABI_V7A": 2, 197 "ARM64_V8A": 3, 198 "X86": 4, 199 "X86_64": 5, 200 "MIPS": 6, 201 "MIPS64": 7, 202 } 203) 204 205func (x Abi_AbiAlias) Enum() *Abi_AbiAlias { 206 p := new(Abi_AbiAlias) 207 *p = x 208 return p 209} 210 211func (x Abi_AbiAlias) String() string { 212 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 213} 214 215func (Abi_AbiAlias) Descriptor() protoreflect.EnumDescriptor { 216 return file_targeting_proto_enumTypes[2].Descriptor() 217} 218 219func (Abi_AbiAlias) Type() protoreflect.EnumType { 220 return &file_targeting_proto_enumTypes[2] 221} 222 223func (x Abi_AbiAlias) Number() protoreflect.EnumNumber { 224 return protoreflect.EnumNumber(x) 225} 226 227// Deprecated: Use Abi_AbiAlias.Descriptor instead. 228func (Abi_AbiAlias) EnumDescriptor() ([]byte, []int) { 229 return file_targeting_proto_rawDescGZIP(), []int{11, 0} 230} 231 232type Sanitizer_SanitizerAlias int32 233 234const ( 235 Sanitizer_NONE Sanitizer_SanitizerAlias = 0 236 Sanitizer_HWADDRESS Sanitizer_SanitizerAlias = 1 237) 238 239// Enum value maps for Sanitizer_SanitizerAlias. 240var ( 241 Sanitizer_SanitizerAlias_name = map[int32]string{ 242 0: "NONE", 243 1: "HWADDRESS", 244 } 245 Sanitizer_SanitizerAlias_value = map[string]int32{ 246 "NONE": 0, 247 "HWADDRESS": 1, 248 } 249) 250 251func (x Sanitizer_SanitizerAlias) Enum() *Sanitizer_SanitizerAlias { 252 p := new(Sanitizer_SanitizerAlias) 253 *p = x 254 return p 255} 256 257func (x Sanitizer_SanitizerAlias) String() string { 258 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 259} 260 261func (Sanitizer_SanitizerAlias) Descriptor() protoreflect.EnumDescriptor { 262 return file_targeting_proto_enumTypes[3].Descriptor() 263} 264 265func (Sanitizer_SanitizerAlias) Type() protoreflect.EnumType { 266 return &file_targeting_proto_enumTypes[3] 267} 268 269func (x Sanitizer_SanitizerAlias) Number() protoreflect.EnumNumber { 270 return protoreflect.EnumNumber(x) 271} 272 273// Deprecated: Use Sanitizer_SanitizerAlias.Descriptor instead. 274func (Sanitizer_SanitizerAlias) EnumDescriptor() ([]byte, []int) { 275 return file_targeting_proto_rawDescGZIP(), []int{13, 0} 276} 277 278// Targeting on the level of variants. 279type VariantTargeting struct { 280 state protoimpl.MessageState 281 sizeCache protoimpl.SizeCache 282 unknownFields protoimpl.UnknownFields 283 284 SdkVersionTargeting *SdkVersionTargeting `protobuf:"bytes,1,opt,name=sdk_version_targeting,json=sdkVersionTargeting,proto3" json:"sdk_version_targeting,omitempty"` 285 AbiTargeting *AbiTargeting `protobuf:"bytes,2,opt,name=abi_targeting,json=abiTargeting,proto3" json:"abi_targeting,omitempty"` 286 ScreenDensityTargeting *ScreenDensityTargeting `protobuf:"bytes,3,opt,name=screen_density_targeting,json=screenDensityTargeting,proto3" json:"screen_density_targeting,omitempty"` 287 MultiAbiTargeting *MultiAbiTargeting `protobuf:"bytes,4,opt,name=multi_abi_targeting,json=multiAbiTargeting,proto3" json:"multi_abi_targeting,omitempty"` 288 TextureCompressionFormatTargeting *TextureCompressionFormatTargeting `protobuf:"bytes,5,opt,name=texture_compression_format_targeting,json=textureCompressionFormatTargeting,proto3" json:"texture_compression_format_targeting,omitempty"` 289} 290 291func (x *VariantTargeting) Reset() { 292 *x = VariantTargeting{} 293 if protoimpl.UnsafeEnabled { 294 mi := &file_targeting_proto_msgTypes[0] 295 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 296 ms.StoreMessageInfo(mi) 297 } 298} 299 300func (x *VariantTargeting) String() string { 301 return protoimpl.X.MessageStringOf(x) 302} 303 304func (*VariantTargeting) ProtoMessage() {} 305 306func (x *VariantTargeting) ProtoReflect() protoreflect.Message { 307 mi := &file_targeting_proto_msgTypes[0] 308 if protoimpl.UnsafeEnabled && x != nil { 309 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 310 if ms.LoadMessageInfo() == nil { 311 ms.StoreMessageInfo(mi) 312 } 313 return ms 314 } 315 return mi.MessageOf(x) 316} 317 318// Deprecated: Use VariantTargeting.ProtoReflect.Descriptor instead. 319func (*VariantTargeting) Descriptor() ([]byte, []int) { 320 return file_targeting_proto_rawDescGZIP(), []int{0} 321} 322 323func (x *VariantTargeting) GetSdkVersionTargeting() *SdkVersionTargeting { 324 if x != nil { 325 return x.SdkVersionTargeting 326 } 327 return nil 328} 329 330func (x *VariantTargeting) GetAbiTargeting() *AbiTargeting { 331 if x != nil { 332 return x.AbiTargeting 333 } 334 return nil 335} 336 337func (x *VariantTargeting) GetScreenDensityTargeting() *ScreenDensityTargeting { 338 if x != nil { 339 return x.ScreenDensityTargeting 340 } 341 return nil 342} 343 344func (x *VariantTargeting) GetMultiAbiTargeting() *MultiAbiTargeting { 345 if x != nil { 346 return x.MultiAbiTargeting 347 } 348 return nil 349} 350 351func (x *VariantTargeting) GetTextureCompressionFormatTargeting() *TextureCompressionFormatTargeting { 352 if x != nil { 353 return x.TextureCompressionFormatTargeting 354 } 355 return nil 356} 357 358// Targeting on the level of individual APKs. 359type ApkTargeting struct { 360 state protoimpl.MessageState 361 sizeCache protoimpl.SizeCache 362 unknownFields protoimpl.UnknownFields 363 364 AbiTargeting *AbiTargeting `protobuf:"bytes,1,opt,name=abi_targeting,json=abiTargeting,proto3" json:"abi_targeting,omitempty"` 365 GraphicsApiTargeting *GraphicsApiTargeting `protobuf:"bytes,2,opt,name=graphics_api_targeting,json=graphicsApiTargeting,proto3" json:"graphics_api_targeting,omitempty"` 366 LanguageTargeting *LanguageTargeting `protobuf:"bytes,3,opt,name=language_targeting,json=languageTargeting,proto3" json:"language_targeting,omitempty"` 367 ScreenDensityTargeting *ScreenDensityTargeting `protobuf:"bytes,4,opt,name=screen_density_targeting,json=screenDensityTargeting,proto3" json:"screen_density_targeting,omitempty"` 368 SdkVersionTargeting *SdkVersionTargeting `protobuf:"bytes,5,opt,name=sdk_version_targeting,json=sdkVersionTargeting,proto3" json:"sdk_version_targeting,omitempty"` 369 TextureCompressionFormatTargeting *TextureCompressionFormatTargeting `protobuf:"bytes,6,opt,name=texture_compression_format_targeting,json=textureCompressionFormatTargeting,proto3" json:"texture_compression_format_targeting,omitempty"` 370 MultiAbiTargeting *MultiAbiTargeting `protobuf:"bytes,7,opt,name=multi_abi_targeting,json=multiAbiTargeting,proto3" json:"multi_abi_targeting,omitempty"` 371 SanitizerTargeting *SanitizerTargeting `protobuf:"bytes,8,opt,name=sanitizer_targeting,json=sanitizerTargeting,proto3" json:"sanitizer_targeting,omitempty"` 372} 373 374func (x *ApkTargeting) Reset() { 375 *x = ApkTargeting{} 376 if protoimpl.UnsafeEnabled { 377 mi := &file_targeting_proto_msgTypes[1] 378 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 379 ms.StoreMessageInfo(mi) 380 } 381} 382 383func (x *ApkTargeting) String() string { 384 return protoimpl.X.MessageStringOf(x) 385} 386 387func (*ApkTargeting) ProtoMessage() {} 388 389func (x *ApkTargeting) ProtoReflect() protoreflect.Message { 390 mi := &file_targeting_proto_msgTypes[1] 391 if protoimpl.UnsafeEnabled && x != nil { 392 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 393 if ms.LoadMessageInfo() == nil { 394 ms.StoreMessageInfo(mi) 395 } 396 return ms 397 } 398 return mi.MessageOf(x) 399} 400 401// Deprecated: Use ApkTargeting.ProtoReflect.Descriptor instead. 402func (*ApkTargeting) Descriptor() ([]byte, []int) { 403 return file_targeting_proto_rawDescGZIP(), []int{1} 404} 405 406func (x *ApkTargeting) GetAbiTargeting() *AbiTargeting { 407 if x != nil { 408 return x.AbiTargeting 409 } 410 return nil 411} 412 413func (x *ApkTargeting) GetGraphicsApiTargeting() *GraphicsApiTargeting { 414 if x != nil { 415 return x.GraphicsApiTargeting 416 } 417 return nil 418} 419 420func (x *ApkTargeting) GetLanguageTargeting() *LanguageTargeting { 421 if x != nil { 422 return x.LanguageTargeting 423 } 424 return nil 425} 426 427func (x *ApkTargeting) GetScreenDensityTargeting() *ScreenDensityTargeting { 428 if x != nil { 429 return x.ScreenDensityTargeting 430 } 431 return nil 432} 433 434func (x *ApkTargeting) GetSdkVersionTargeting() *SdkVersionTargeting { 435 if x != nil { 436 return x.SdkVersionTargeting 437 } 438 return nil 439} 440 441func (x *ApkTargeting) GetTextureCompressionFormatTargeting() *TextureCompressionFormatTargeting { 442 if x != nil { 443 return x.TextureCompressionFormatTargeting 444 } 445 return nil 446} 447 448func (x *ApkTargeting) GetMultiAbiTargeting() *MultiAbiTargeting { 449 if x != nil { 450 return x.MultiAbiTargeting 451 } 452 return nil 453} 454 455func (x *ApkTargeting) GetSanitizerTargeting() *SanitizerTargeting { 456 if x != nil { 457 return x.SanitizerTargeting 458 } 459 return nil 460} 461 462// Targeting on the module level. 463// The semantic of the targeting is the "AND" rule on all immediate values. 464type ModuleTargeting struct { 465 state protoimpl.MessageState 466 sizeCache protoimpl.SizeCache 467 unknownFields protoimpl.UnknownFields 468 469 SdkVersionTargeting *SdkVersionTargeting `protobuf:"bytes,1,opt,name=sdk_version_targeting,json=sdkVersionTargeting,proto3" json:"sdk_version_targeting,omitempty"` 470 DeviceFeatureTargeting []*DeviceFeatureTargeting `protobuf:"bytes,2,rep,name=device_feature_targeting,json=deviceFeatureTargeting,proto3" json:"device_feature_targeting,omitempty"` 471 UserCountriesTargeting *UserCountriesTargeting `protobuf:"bytes,3,opt,name=user_countries_targeting,json=userCountriesTargeting,proto3" json:"user_countries_targeting,omitempty"` 472} 473 474func (x *ModuleTargeting) Reset() { 475 *x = ModuleTargeting{} 476 if protoimpl.UnsafeEnabled { 477 mi := &file_targeting_proto_msgTypes[2] 478 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 479 ms.StoreMessageInfo(mi) 480 } 481} 482 483func (x *ModuleTargeting) String() string { 484 return protoimpl.X.MessageStringOf(x) 485} 486 487func (*ModuleTargeting) ProtoMessage() {} 488 489func (x *ModuleTargeting) ProtoReflect() protoreflect.Message { 490 mi := &file_targeting_proto_msgTypes[2] 491 if protoimpl.UnsafeEnabled && x != nil { 492 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 493 if ms.LoadMessageInfo() == nil { 494 ms.StoreMessageInfo(mi) 495 } 496 return ms 497 } 498 return mi.MessageOf(x) 499} 500 501// Deprecated: Use ModuleTargeting.ProtoReflect.Descriptor instead. 502func (*ModuleTargeting) Descriptor() ([]byte, []int) { 503 return file_targeting_proto_rawDescGZIP(), []int{2} 504} 505 506func (x *ModuleTargeting) GetSdkVersionTargeting() *SdkVersionTargeting { 507 if x != nil { 508 return x.SdkVersionTargeting 509 } 510 return nil 511} 512 513func (x *ModuleTargeting) GetDeviceFeatureTargeting() []*DeviceFeatureTargeting { 514 if x != nil { 515 return x.DeviceFeatureTargeting 516 } 517 return nil 518} 519 520func (x *ModuleTargeting) GetUserCountriesTargeting() *UserCountriesTargeting { 521 if x != nil { 522 return x.UserCountriesTargeting 523 } 524 return nil 525} 526 527// User Countries targeting describing an inclusive/exclusive list of country 528// codes that module targets. 529type UserCountriesTargeting struct { 530 state protoimpl.MessageState 531 sizeCache protoimpl.SizeCache 532 unknownFields protoimpl.UnknownFields 533 534 // List of country codes in the two-letter CLDR territory format. 535 CountryCodes []string `protobuf:"bytes,1,rep,name=country_codes,json=countryCodes,proto3" json:"country_codes,omitempty"` 536 // Indicates if the list above is exclusive. 537 Exclude bool `protobuf:"varint,2,opt,name=exclude,proto3" json:"exclude,omitempty"` 538} 539 540func (x *UserCountriesTargeting) Reset() { 541 *x = UserCountriesTargeting{} 542 if protoimpl.UnsafeEnabled { 543 mi := &file_targeting_proto_msgTypes[3] 544 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 545 ms.StoreMessageInfo(mi) 546 } 547} 548 549func (x *UserCountriesTargeting) String() string { 550 return protoimpl.X.MessageStringOf(x) 551} 552 553func (*UserCountriesTargeting) ProtoMessage() {} 554 555func (x *UserCountriesTargeting) ProtoReflect() protoreflect.Message { 556 mi := &file_targeting_proto_msgTypes[3] 557 if protoimpl.UnsafeEnabled && x != nil { 558 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 559 if ms.LoadMessageInfo() == nil { 560 ms.StoreMessageInfo(mi) 561 } 562 return ms 563 } 564 return mi.MessageOf(x) 565} 566 567// Deprecated: Use UserCountriesTargeting.ProtoReflect.Descriptor instead. 568func (*UserCountriesTargeting) Descriptor() ([]byte, []int) { 569 return file_targeting_proto_rawDescGZIP(), []int{3} 570} 571 572func (x *UserCountriesTargeting) GetCountryCodes() []string { 573 if x != nil { 574 return x.CountryCodes 575 } 576 return nil 577} 578 579func (x *UserCountriesTargeting) GetExclude() bool { 580 if x != nil { 581 return x.Exclude 582 } 583 return false 584} 585 586type ScreenDensity struct { 587 state protoimpl.MessageState 588 sizeCache protoimpl.SizeCache 589 unknownFields protoimpl.UnknownFields 590 591 // Types that are assignable to DensityOneof: 592 // *ScreenDensity_DensityAlias_ 593 // *ScreenDensity_DensityDpi 594 DensityOneof isScreenDensity_DensityOneof `protobuf_oneof:"density_oneof"` 595} 596 597func (x *ScreenDensity) Reset() { 598 *x = ScreenDensity{} 599 if protoimpl.UnsafeEnabled { 600 mi := &file_targeting_proto_msgTypes[4] 601 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 602 ms.StoreMessageInfo(mi) 603 } 604} 605 606func (x *ScreenDensity) String() string { 607 return protoimpl.X.MessageStringOf(x) 608} 609 610func (*ScreenDensity) ProtoMessage() {} 611 612func (x *ScreenDensity) ProtoReflect() protoreflect.Message { 613 mi := &file_targeting_proto_msgTypes[4] 614 if protoimpl.UnsafeEnabled && x != nil { 615 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 616 if ms.LoadMessageInfo() == nil { 617 ms.StoreMessageInfo(mi) 618 } 619 return ms 620 } 621 return mi.MessageOf(x) 622} 623 624// Deprecated: Use ScreenDensity.ProtoReflect.Descriptor instead. 625func (*ScreenDensity) Descriptor() ([]byte, []int) { 626 return file_targeting_proto_rawDescGZIP(), []int{4} 627} 628 629func (m *ScreenDensity) GetDensityOneof() isScreenDensity_DensityOneof { 630 if m != nil { 631 return m.DensityOneof 632 } 633 return nil 634} 635 636func (x *ScreenDensity) GetDensityAlias() ScreenDensity_DensityAlias { 637 if x, ok := x.GetDensityOneof().(*ScreenDensity_DensityAlias_); ok { 638 return x.DensityAlias 639 } 640 return ScreenDensity_DENSITY_UNSPECIFIED 641} 642 643func (x *ScreenDensity) GetDensityDpi() int32 { 644 if x, ok := x.GetDensityOneof().(*ScreenDensity_DensityDpi); ok { 645 return x.DensityDpi 646 } 647 return 0 648} 649 650type isScreenDensity_DensityOneof interface { 651 isScreenDensity_DensityOneof() 652} 653 654type ScreenDensity_DensityAlias_ struct { 655 DensityAlias ScreenDensity_DensityAlias `protobuf:"varint,1,opt,name=density_alias,json=densityAlias,proto3,enum=android.bundle.ScreenDensity_DensityAlias,oneof"` 656} 657 658type ScreenDensity_DensityDpi struct { 659 DensityDpi int32 `protobuf:"varint,2,opt,name=density_dpi,json=densityDpi,proto3,oneof"` 660} 661 662func (*ScreenDensity_DensityAlias_) isScreenDensity_DensityOneof() {} 663 664func (*ScreenDensity_DensityDpi) isScreenDensity_DensityOneof() {} 665 666// Wrapper message for `int32`. 667// 668// The JSON representation for `Int32Value` is JSON number. 669type Int32Value struct { 670 state protoimpl.MessageState 671 sizeCache protoimpl.SizeCache 672 unknownFields protoimpl.UnknownFields 673 674 // The int32 value. 675 Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` 676} 677 678func (x *Int32Value) Reset() { 679 *x = Int32Value{} 680 if protoimpl.UnsafeEnabled { 681 mi := &file_targeting_proto_msgTypes[5] 682 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 683 ms.StoreMessageInfo(mi) 684 } 685} 686 687func (x *Int32Value) String() string { 688 return protoimpl.X.MessageStringOf(x) 689} 690 691func (*Int32Value) ProtoMessage() {} 692 693func (x *Int32Value) ProtoReflect() protoreflect.Message { 694 mi := &file_targeting_proto_msgTypes[5] 695 if protoimpl.UnsafeEnabled && x != nil { 696 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 697 if ms.LoadMessageInfo() == nil { 698 ms.StoreMessageInfo(mi) 699 } 700 return ms 701 } 702 return mi.MessageOf(x) 703} 704 705// Deprecated: Use Int32Value.ProtoReflect.Descriptor instead. 706func (*Int32Value) Descriptor() ([]byte, []int) { 707 return file_targeting_proto_rawDescGZIP(), []int{5} 708} 709 710func (x *Int32Value) GetValue() int32 { 711 if x != nil { 712 return x.Value 713 } 714 return 0 715} 716 717type SdkVersion struct { 718 state protoimpl.MessageState 719 sizeCache protoimpl.SizeCache 720 unknownFields protoimpl.UnknownFields 721 722 // Inclusive. 723 Min *Int32Value `protobuf:"bytes,1,opt,name=min,proto3" json:"min,omitempty"` 724} 725 726func (x *SdkVersion) Reset() { 727 *x = SdkVersion{} 728 if protoimpl.UnsafeEnabled { 729 mi := &file_targeting_proto_msgTypes[6] 730 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 731 ms.StoreMessageInfo(mi) 732 } 733} 734 735func (x *SdkVersion) String() string { 736 return protoimpl.X.MessageStringOf(x) 737} 738 739func (*SdkVersion) ProtoMessage() {} 740 741func (x *SdkVersion) ProtoReflect() protoreflect.Message { 742 mi := &file_targeting_proto_msgTypes[6] 743 if protoimpl.UnsafeEnabled && x != nil { 744 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 745 if ms.LoadMessageInfo() == nil { 746 ms.StoreMessageInfo(mi) 747 } 748 return ms 749 } 750 return mi.MessageOf(x) 751} 752 753// Deprecated: Use SdkVersion.ProtoReflect.Descriptor instead. 754func (*SdkVersion) Descriptor() ([]byte, []int) { 755 return file_targeting_proto_rawDescGZIP(), []int{6} 756} 757 758func (x *SdkVersion) GetMin() *Int32Value { 759 if x != nil { 760 return x.Min 761 } 762 return nil 763} 764 765type GraphicsApi struct { 766 state protoimpl.MessageState 767 sizeCache protoimpl.SizeCache 768 unknownFields protoimpl.UnknownFields 769 770 // Types that are assignable to ApiOneof: 771 // *GraphicsApi_MinOpenGlVersion 772 // *GraphicsApi_MinVulkanVersion 773 ApiOneof isGraphicsApi_ApiOneof `protobuf_oneof:"api_oneof"` 774} 775 776func (x *GraphicsApi) Reset() { 777 *x = GraphicsApi{} 778 if protoimpl.UnsafeEnabled { 779 mi := &file_targeting_proto_msgTypes[7] 780 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 781 ms.StoreMessageInfo(mi) 782 } 783} 784 785func (x *GraphicsApi) String() string { 786 return protoimpl.X.MessageStringOf(x) 787} 788 789func (*GraphicsApi) ProtoMessage() {} 790 791func (x *GraphicsApi) ProtoReflect() protoreflect.Message { 792 mi := &file_targeting_proto_msgTypes[7] 793 if protoimpl.UnsafeEnabled && x != nil { 794 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 795 if ms.LoadMessageInfo() == nil { 796 ms.StoreMessageInfo(mi) 797 } 798 return ms 799 } 800 return mi.MessageOf(x) 801} 802 803// Deprecated: Use GraphicsApi.ProtoReflect.Descriptor instead. 804func (*GraphicsApi) Descriptor() ([]byte, []int) { 805 return file_targeting_proto_rawDescGZIP(), []int{7} 806} 807 808func (m *GraphicsApi) GetApiOneof() isGraphicsApi_ApiOneof { 809 if m != nil { 810 return m.ApiOneof 811 } 812 return nil 813} 814 815func (x *GraphicsApi) GetMinOpenGlVersion() *OpenGlVersion { 816 if x, ok := x.GetApiOneof().(*GraphicsApi_MinOpenGlVersion); ok { 817 return x.MinOpenGlVersion 818 } 819 return nil 820} 821 822func (x *GraphicsApi) GetMinVulkanVersion() *VulkanVersion { 823 if x, ok := x.GetApiOneof().(*GraphicsApi_MinVulkanVersion); ok { 824 return x.MinVulkanVersion 825 } 826 return nil 827} 828 829type isGraphicsApi_ApiOneof interface { 830 isGraphicsApi_ApiOneof() 831} 832 833type GraphicsApi_MinOpenGlVersion struct { 834 // Inclusive. 835 MinOpenGlVersion *OpenGlVersion `protobuf:"bytes,1,opt,name=min_open_gl_version,json=minOpenGlVersion,proto3,oneof"` 836} 837 838type GraphicsApi_MinVulkanVersion struct { 839 // Inclusive. 840 MinVulkanVersion *VulkanVersion `protobuf:"bytes,2,opt,name=min_vulkan_version,json=minVulkanVersion,proto3,oneof"` 841} 842 843func (*GraphicsApi_MinOpenGlVersion) isGraphicsApi_ApiOneof() {} 844 845func (*GraphicsApi_MinVulkanVersion) isGraphicsApi_ApiOneof() {} 846 847type VulkanVersion struct { 848 state protoimpl.MessageState 849 sizeCache protoimpl.SizeCache 850 unknownFields protoimpl.UnknownFields 851 852 Major int32 `protobuf:"varint,1,opt,name=major,proto3" json:"major,omitempty"` // VK_VERSION_MAJOR 853 Minor int32 `protobuf:"varint,2,opt,name=minor,proto3" json:"minor,omitempty"` // VK_VERSION_MINOR 854} 855 856func (x *VulkanVersion) Reset() { 857 *x = VulkanVersion{} 858 if protoimpl.UnsafeEnabled { 859 mi := &file_targeting_proto_msgTypes[8] 860 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 861 ms.StoreMessageInfo(mi) 862 } 863} 864 865func (x *VulkanVersion) String() string { 866 return protoimpl.X.MessageStringOf(x) 867} 868 869func (*VulkanVersion) ProtoMessage() {} 870 871func (x *VulkanVersion) ProtoReflect() protoreflect.Message { 872 mi := &file_targeting_proto_msgTypes[8] 873 if protoimpl.UnsafeEnabled && x != nil { 874 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 875 if ms.LoadMessageInfo() == nil { 876 ms.StoreMessageInfo(mi) 877 } 878 return ms 879 } 880 return mi.MessageOf(x) 881} 882 883// Deprecated: Use VulkanVersion.ProtoReflect.Descriptor instead. 884func (*VulkanVersion) Descriptor() ([]byte, []int) { 885 return file_targeting_proto_rawDescGZIP(), []int{8} 886} 887 888func (x *VulkanVersion) GetMajor() int32 { 889 if x != nil { 890 return x.Major 891 } 892 return 0 893} 894 895func (x *VulkanVersion) GetMinor() int32 { 896 if x != nil { 897 return x.Minor 898 } 899 return 0 900} 901 902type OpenGlVersion struct { 903 state protoimpl.MessageState 904 sizeCache protoimpl.SizeCache 905 unknownFields protoimpl.UnknownFields 906 907 // e.g. OpenGL ES 3.2 is represented as { major: 3, minor: 2 } 908 Major int32 `protobuf:"varint,1,opt,name=major,proto3" json:"major,omitempty"` // GL_MAJOR_VERSION 909 Minor int32 `protobuf:"varint,2,opt,name=minor,proto3" json:"minor,omitempty"` // GL_MINOR_VERSION 910} 911 912func (x *OpenGlVersion) Reset() { 913 *x = OpenGlVersion{} 914 if protoimpl.UnsafeEnabled { 915 mi := &file_targeting_proto_msgTypes[9] 916 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 917 ms.StoreMessageInfo(mi) 918 } 919} 920 921func (x *OpenGlVersion) String() string { 922 return protoimpl.X.MessageStringOf(x) 923} 924 925func (*OpenGlVersion) ProtoMessage() {} 926 927func (x *OpenGlVersion) ProtoReflect() protoreflect.Message { 928 mi := &file_targeting_proto_msgTypes[9] 929 if protoimpl.UnsafeEnabled && x != nil { 930 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 931 if ms.LoadMessageInfo() == nil { 932 ms.StoreMessageInfo(mi) 933 } 934 return ms 935 } 936 return mi.MessageOf(x) 937} 938 939// Deprecated: Use OpenGlVersion.ProtoReflect.Descriptor instead. 940func (*OpenGlVersion) Descriptor() ([]byte, []int) { 941 return file_targeting_proto_rawDescGZIP(), []int{9} 942} 943 944func (x *OpenGlVersion) GetMajor() int32 { 945 if x != nil { 946 return x.Major 947 } 948 return 0 949} 950 951func (x *OpenGlVersion) GetMinor() int32 { 952 if x != nil { 953 return x.Minor 954 } 955 return 0 956} 957 958type TextureCompressionFormat struct { 959 state protoimpl.MessageState 960 sizeCache protoimpl.SizeCache 961 unknownFields protoimpl.UnknownFields 962 963 Alias TextureCompressionFormat_TextureCompressionFormatAlias `protobuf:"varint,1,opt,name=alias,proto3,enum=android.bundle.TextureCompressionFormat_TextureCompressionFormatAlias" json:"alias,omitempty"` 964} 965 966func (x *TextureCompressionFormat) Reset() { 967 *x = TextureCompressionFormat{} 968 if protoimpl.UnsafeEnabled { 969 mi := &file_targeting_proto_msgTypes[10] 970 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 971 ms.StoreMessageInfo(mi) 972 } 973} 974 975func (x *TextureCompressionFormat) String() string { 976 return protoimpl.X.MessageStringOf(x) 977} 978 979func (*TextureCompressionFormat) ProtoMessage() {} 980 981func (x *TextureCompressionFormat) ProtoReflect() protoreflect.Message { 982 mi := &file_targeting_proto_msgTypes[10] 983 if protoimpl.UnsafeEnabled && x != nil { 984 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 985 if ms.LoadMessageInfo() == nil { 986 ms.StoreMessageInfo(mi) 987 } 988 return ms 989 } 990 return mi.MessageOf(x) 991} 992 993// Deprecated: Use TextureCompressionFormat.ProtoReflect.Descriptor instead. 994func (*TextureCompressionFormat) Descriptor() ([]byte, []int) { 995 return file_targeting_proto_rawDescGZIP(), []int{10} 996} 997 998func (x *TextureCompressionFormat) GetAlias() TextureCompressionFormat_TextureCompressionFormatAlias { 999 if x != nil { 1000 return x.Alias 1001 } 1002 return TextureCompressionFormat_UNSPECIFIED_TEXTURE_COMPRESSION_FORMAT 1003} 1004 1005type Abi struct { 1006 state protoimpl.MessageState 1007 sizeCache protoimpl.SizeCache 1008 unknownFields protoimpl.UnknownFields 1009 1010 Alias Abi_AbiAlias `protobuf:"varint,1,opt,name=alias,proto3,enum=android.bundle.Abi_AbiAlias" json:"alias,omitempty"` 1011} 1012 1013func (x *Abi) Reset() { 1014 *x = Abi{} 1015 if protoimpl.UnsafeEnabled { 1016 mi := &file_targeting_proto_msgTypes[11] 1017 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1018 ms.StoreMessageInfo(mi) 1019 } 1020} 1021 1022func (x *Abi) String() string { 1023 return protoimpl.X.MessageStringOf(x) 1024} 1025 1026func (*Abi) ProtoMessage() {} 1027 1028func (x *Abi) ProtoReflect() protoreflect.Message { 1029 mi := &file_targeting_proto_msgTypes[11] 1030 if protoimpl.UnsafeEnabled && x != nil { 1031 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1032 if ms.LoadMessageInfo() == nil { 1033 ms.StoreMessageInfo(mi) 1034 } 1035 return ms 1036 } 1037 return mi.MessageOf(x) 1038} 1039 1040// Deprecated: Use Abi.ProtoReflect.Descriptor instead. 1041func (*Abi) Descriptor() ([]byte, []int) { 1042 return file_targeting_proto_rawDescGZIP(), []int{11} 1043} 1044 1045func (x *Abi) GetAlias() Abi_AbiAlias { 1046 if x != nil { 1047 return x.Alias 1048 } 1049 return Abi_UNSPECIFIED_CPU_ARCHITECTURE 1050} 1051 1052type MultiAbi struct { 1053 state protoimpl.MessageState 1054 sizeCache protoimpl.SizeCache 1055 unknownFields protoimpl.UnknownFields 1056 1057 Abi []*Abi `protobuf:"bytes,1,rep,name=abi,proto3" json:"abi,omitempty"` 1058} 1059 1060func (x *MultiAbi) Reset() { 1061 *x = MultiAbi{} 1062 if protoimpl.UnsafeEnabled { 1063 mi := &file_targeting_proto_msgTypes[12] 1064 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1065 ms.StoreMessageInfo(mi) 1066 } 1067} 1068 1069func (x *MultiAbi) String() string { 1070 return protoimpl.X.MessageStringOf(x) 1071} 1072 1073func (*MultiAbi) ProtoMessage() {} 1074 1075func (x *MultiAbi) ProtoReflect() protoreflect.Message { 1076 mi := &file_targeting_proto_msgTypes[12] 1077 if protoimpl.UnsafeEnabled && x != nil { 1078 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1079 if ms.LoadMessageInfo() == nil { 1080 ms.StoreMessageInfo(mi) 1081 } 1082 return ms 1083 } 1084 return mi.MessageOf(x) 1085} 1086 1087// Deprecated: Use MultiAbi.ProtoReflect.Descriptor instead. 1088func (*MultiAbi) Descriptor() ([]byte, []int) { 1089 return file_targeting_proto_rawDescGZIP(), []int{12} 1090} 1091 1092func (x *MultiAbi) GetAbi() []*Abi { 1093 if x != nil { 1094 return x.Abi 1095 } 1096 return nil 1097} 1098 1099type Sanitizer struct { 1100 state protoimpl.MessageState 1101 sizeCache protoimpl.SizeCache 1102 unknownFields protoimpl.UnknownFields 1103 1104 Alias Sanitizer_SanitizerAlias `protobuf:"varint,1,opt,name=alias,proto3,enum=android.bundle.Sanitizer_SanitizerAlias" json:"alias,omitempty"` 1105} 1106 1107func (x *Sanitizer) Reset() { 1108 *x = Sanitizer{} 1109 if protoimpl.UnsafeEnabled { 1110 mi := &file_targeting_proto_msgTypes[13] 1111 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1112 ms.StoreMessageInfo(mi) 1113 } 1114} 1115 1116func (x *Sanitizer) String() string { 1117 return protoimpl.X.MessageStringOf(x) 1118} 1119 1120func (*Sanitizer) ProtoMessage() {} 1121 1122func (x *Sanitizer) ProtoReflect() protoreflect.Message { 1123 mi := &file_targeting_proto_msgTypes[13] 1124 if protoimpl.UnsafeEnabled && x != nil { 1125 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1126 if ms.LoadMessageInfo() == nil { 1127 ms.StoreMessageInfo(mi) 1128 } 1129 return ms 1130 } 1131 return mi.MessageOf(x) 1132} 1133 1134// Deprecated: Use Sanitizer.ProtoReflect.Descriptor instead. 1135func (*Sanitizer) Descriptor() ([]byte, []int) { 1136 return file_targeting_proto_rawDescGZIP(), []int{13} 1137} 1138 1139func (x *Sanitizer) GetAlias() Sanitizer_SanitizerAlias { 1140 if x != nil { 1141 return x.Alias 1142 } 1143 return Sanitizer_NONE 1144} 1145 1146type DeviceFeature struct { 1147 state protoimpl.MessageState 1148 sizeCache protoimpl.SizeCache 1149 unknownFields protoimpl.UnknownFields 1150 1151 FeatureName string `protobuf:"bytes,1,opt,name=feature_name,json=featureName,proto3" json:"feature_name,omitempty"` 1152 // Equivalent of android:glEsVersion or android:version in <uses-feature>. 1153 FeatureVersion int32 `protobuf:"varint,2,opt,name=feature_version,json=featureVersion,proto3" json:"feature_version,omitempty"` 1154} 1155 1156func (x *DeviceFeature) Reset() { 1157 *x = DeviceFeature{} 1158 if protoimpl.UnsafeEnabled { 1159 mi := &file_targeting_proto_msgTypes[14] 1160 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1161 ms.StoreMessageInfo(mi) 1162 } 1163} 1164 1165func (x *DeviceFeature) String() string { 1166 return protoimpl.X.MessageStringOf(x) 1167} 1168 1169func (*DeviceFeature) ProtoMessage() {} 1170 1171func (x *DeviceFeature) ProtoReflect() protoreflect.Message { 1172 mi := &file_targeting_proto_msgTypes[14] 1173 if protoimpl.UnsafeEnabled && x != nil { 1174 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1175 if ms.LoadMessageInfo() == nil { 1176 ms.StoreMessageInfo(mi) 1177 } 1178 return ms 1179 } 1180 return mi.MessageOf(x) 1181} 1182 1183// Deprecated: Use DeviceFeature.ProtoReflect.Descriptor instead. 1184func (*DeviceFeature) Descriptor() ([]byte, []int) { 1185 return file_targeting_proto_rawDescGZIP(), []int{14} 1186} 1187 1188func (x *DeviceFeature) GetFeatureName() string { 1189 if x != nil { 1190 return x.FeatureName 1191 } 1192 return "" 1193} 1194 1195func (x *DeviceFeature) GetFeatureVersion() int32 { 1196 if x != nil { 1197 return x.FeatureVersion 1198 } 1199 return 0 1200} 1201 1202// Targeting specific for directories under assets/. 1203type AssetsDirectoryTargeting struct { 1204 state protoimpl.MessageState 1205 sizeCache protoimpl.SizeCache 1206 unknownFields protoimpl.UnknownFields 1207 1208 Abi *AbiTargeting `protobuf:"bytes,1,opt,name=abi,proto3" json:"abi,omitempty"` 1209 GraphicsApi *GraphicsApiTargeting `protobuf:"bytes,2,opt,name=graphics_api,json=graphicsApi,proto3" json:"graphics_api,omitempty"` 1210 TextureCompressionFormat *TextureCompressionFormatTargeting `protobuf:"bytes,3,opt,name=texture_compression_format,json=textureCompressionFormat,proto3" json:"texture_compression_format,omitempty"` 1211 Language *LanguageTargeting `protobuf:"bytes,4,opt,name=language,proto3" json:"language,omitempty"` 1212} 1213 1214func (x *AssetsDirectoryTargeting) Reset() { 1215 *x = AssetsDirectoryTargeting{} 1216 if protoimpl.UnsafeEnabled { 1217 mi := &file_targeting_proto_msgTypes[15] 1218 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1219 ms.StoreMessageInfo(mi) 1220 } 1221} 1222 1223func (x *AssetsDirectoryTargeting) String() string { 1224 return protoimpl.X.MessageStringOf(x) 1225} 1226 1227func (*AssetsDirectoryTargeting) ProtoMessage() {} 1228 1229func (x *AssetsDirectoryTargeting) ProtoReflect() protoreflect.Message { 1230 mi := &file_targeting_proto_msgTypes[15] 1231 if protoimpl.UnsafeEnabled && x != nil { 1232 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1233 if ms.LoadMessageInfo() == nil { 1234 ms.StoreMessageInfo(mi) 1235 } 1236 return ms 1237 } 1238 return mi.MessageOf(x) 1239} 1240 1241// Deprecated: Use AssetsDirectoryTargeting.ProtoReflect.Descriptor instead. 1242func (*AssetsDirectoryTargeting) Descriptor() ([]byte, []int) { 1243 return file_targeting_proto_rawDescGZIP(), []int{15} 1244} 1245 1246func (x *AssetsDirectoryTargeting) GetAbi() *AbiTargeting { 1247 if x != nil { 1248 return x.Abi 1249 } 1250 return nil 1251} 1252 1253func (x *AssetsDirectoryTargeting) GetGraphicsApi() *GraphicsApiTargeting { 1254 if x != nil { 1255 return x.GraphicsApi 1256 } 1257 return nil 1258} 1259 1260func (x *AssetsDirectoryTargeting) GetTextureCompressionFormat() *TextureCompressionFormatTargeting { 1261 if x != nil { 1262 return x.TextureCompressionFormat 1263 } 1264 return nil 1265} 1266 1267func (x *AssetsDirectoryTargeting) GetLanguage() *LanguageTargeting { 1268 if x != nil { 1269 return x.Language 1270 } 1271 return nil 1272} 1273 1274// Targeting specific for directories under lib/. 1275type NativeDirectoryTargeting struct { 1276 state protoimpl.MessageState 1277 sizeCache protoimpl.SizeCache 1278 unknownFields protoimpl.UnknownFields 1279 1280 Abi *Abi `protobuf:"bytes,1,opt,name=abi,proto3" json:"abi,omitempty"` 1281 GraphicsApi *GraphicsApi `protobuf:"bytes,2,opt,name=graphics_api,json=graphicsApi,proto3" json:"graphics_api,omitempty"` 1282 TextureCompressionFormat *TextureCompressionFormat `protobuf:"bytes,3,opt,name=texture_compression_format,json=textureCompressionFormat,proto3" json:"texture_compression_format,omitempty"` 1283 Sanitizer *Sanitizer `protobuf:"bytes,4,opt,name=sanitizer,proto3" json:"sanitizer,omitempty"` 1284} 1285 1286func (x *NativeDirectoryTargeting) Reset() { 1287 *x = NativeDirectoryTargeting{} 1288 if protoimpl.UnsafeEnabled { 1289 mi := &file_targeting_proto_msgTypes[16] 1290 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1291 ms.StoreMessageInfo(mi) 1292 } 1293} 1294 1295func (x *NativeDirectoryTargeting) String() string { 1296 return protoimpl.X.MessageStringOf(x) 1297} 1298 1299func (*NativeDirectoryTargeting) ProtoMessage() {} 1300 1301func (x *NativeDirectoryTargeting) ProtoReflect() protoreflect.Message { 1302 mi := &file_targeting_proto_msgTypes[16] 1303 if protoimpl.UnsafeEnabled && x != nil { 1304 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1305 if ms.LoadMessageInfo() == nil { 1306 ms.StoreMessageInfo(mi) 1307 } 1308 return ms 1309 } 1310 return mi.MessageOf(x) 1311} 1312 1313// Deprecated: Use NativeDirectoryTargeting.ProtoReflect.Descriptor instead. 1314func (*NativeDirectoryTargeting) Descriptor() ([]byte, []int) { 1315 return file_targeting_proto_rawDescGZIP(), []int{16} 1316} 1317 1318func (x *NativeDirectoryTargeting) GetAbi() *Abi { 1319 if x != nil { 1320 return x.Abi 1321 } 1322 return nil 1323} 1324 1325func (x *NativeDirectoryTargeting) GetGraphicsApi() *GraphicsApi { 1326 if x != nil { 1327 return x.GraphicsApi 1328 } 1329 return nil 1330} 1331 1332func (x *NativeDirectoryTargeting) GetTextureCompressionFormat() *TextureCompressionFormat { 1333 if x != nil { 1334 return x.TextureCompressionFormat 1335 } 1336 return nil 1337} 1338 1339func (x *NativeDirectoryTargeting) GetSanitizer() *Sanitizer { 1340 if x != nil { 1341 return x.Sanitizer 1342 } 1343 return nil 1344} 1345 1346// Targeting specific for image files under apex/. 1347type ApexImageTargeting struct { 1348 state protoimpl.MessageState 1349 sizeCache protoimpl.SizeCache 1350 unknownFields protoimpl.UnknownFields 1351 1352 MultiAbi *MultiAbiTargeting `protobuf:"bytes,1,opt,name=multi_abi,json=multiAbi,proto3" json:"multi_abi,omitempty"` 1353} 1354 1355func (x *ApexImageTargeting) Reset() { 1356 *x = ApexImageTargeting{} 1357 if protoimpl.UnsafeEnabled { 1358 mi := &file_targeting_proto_msgTypes[17] 1359 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1360 ms.StoreMessageInfo(mi) 1361 } 1362} 1363 1364func (x *ApexImageTargeting) String() string { 1365 return protoimpl.X.MessageStringOf(x) 1366} 1367 1368func (*ApexImageTargeting) ProtoMessage() {} 1369 1370func (x *ApexImageTargeting) ProtoReflect() protoreflect.Message { 1371 mi := &file_targeting_proto_msgTypes[17] 1372 if protoimpl.UnsafeEnabled && x != nil { 1373 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1374 if ms.LoadMessageInfo() == nil { 1375 ms.StoreMessageInfo(mi) 1376 } 1377 return ms 1378 } 1379 return mi.MessageOf(x) 1380} 1381 1382// Deprecated: Use ApexImageTargeting.ProtoReflect.Descriptor instead. 1383func (*ApexImageTargeting) Descriptor() ([]byte, []int) { 1384 return file_targeting_proto_rawDescGZIP(), []int{17} 1385} 1386 1387func (x *ApexImageTargeting) GetMultiAbi() *MultiAbiTargeting { 1388 if x != nil { 1389 return x.MultiAbi 1390 } 1391 return nil 1392} 1393 1394type AbiTargeting struct { 1395 state protoimpl.MessageState 1396 sizeCache protoimpl.SizeCache 1397 unknownFields protoimpl.UnknownFields 1398 1399 Value []*Abi `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"` 1400 // Targeting of other sibling directories that were in the Bundle. 1401 // For master splits this is targeting of other master splits. 1402 Alternatives []*Abi `protobuf:"bytes,2,rep,name=alternatives,proto3" json:"alternatives,omitempty"` 1403} 1404 1405func (x *AbiTargeting) Reset() { 1406 *x = AbiTargeting{} 1407 if protoimpl.UnsafeEnabled { 1408 mi := &file_targeting_proto_msgTypes[18] 1409 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1410 ms.StoreMessageInfo(mi) 1411 } 1412} 1413 1414func (x *AbiTargeting) String() string { 1415 return protoimpl.X.MessageStringOf(x) 1416} 1417 1418func (*AbiTargeting) ProtoMessage() {} 1419 1420func (x *AbiTargeting) ProtoReflect() protoreflect.Message { 1421 mi := &file_targeting_proto_msgTypes[18] 1422 if protoimpl.UnsafeEnabled && x != nil { 1423 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1424 if ms.LoadMessageInfo() == nil { 1425 ms.StoreMessageInfo(mi) 1426 } 1427 return ms 1428 } 1429 return mi.MessageOf(x) 1430} 1431 1432// Deprecated: Use AbiTargeting.ProtoReflect.Descriptor instead. 1433func (*AbiTargeting) Descriptor() ([]byte, []int) { 1434 return file_targeting_proto_rawDescGZIP(), []int{18} 1435} 1436 1437func (x *AbiTargeting) GetValue() []*Abi { 1438 if x != nil { 1439 return x.Value 1440 } 1441 return nil 1442} 1443 1444func (x *AbiTargeting) GetAlternatives() []*Abi { 1445 if x != nil { 1446 return x.Alternatives 1447 } 1448 return nil 1449} 1450 1451type MultiAbiTargeting struct { 1452 state protoimpl.MessageState 1453 sizeCache protoimpl.SizeCache 1454 unknownFields protoimpl.UnknownFields 1455 1456 Value []*MultiAbi `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"` 1457 // Targeting of other sibling directories that were in the Bundle. 1458 // For master splits this is targeting of other master splits. 1459 Alternatives []*MultiAbi `protobuf:"bytes,2,rep,name=alternatives,proto3" json:"alternatives,omitempty"` 1460} 1461 1462func (x *MultiAbiTargeting) Reset() { 1463 *x = MultiAbiTargeting{} 1464 if protoimpl.UnsafeEnabled { 1465 mi := &file_targeting_proto_msgTypes[19] 1466 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1467 ms.StoreMessageInfo(mi) 1468 } 1469} 1470 1471func (x *MultiAbiTargeting) String() string { 1472 return protoimpl.X.MessageStringOf(x) 1473} 1474 1475func (*MultiAbiTargeting) ProtoMessage() {} 1476 1477func (x *MultiAbiTargeting) ProtoReflect() protoreflect.Message { 1478 mi := &file_targeting_proto_msgTypes[19] 1479 if protoimpl.UnsafeEnabled && x != nil { 1480 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1481 if ms.LoadMessageInfo() == nil { 1482 ms.StoreMessageInfo(mi) 1483 } 1484 return ms 1485 } 1486 return mi.MessageOf(x) 1487} 1488 1489// Deprecated: Use MultiAbiTargeting.ProtoReflect.Descriptor instead. 1490func (*MultiAbiTargeting) Descriptor() ([]byte, []int) { 1491 return file_targeting_proto_rawDescGZIP(), []int{19} 1492} 1493 1494func (x *MultiAbiTargeting) GetValue() []*MultiAbi { 1495 if x != nil { 1496 return x.Value 1497 } 1498 return nil 1499} 1500 1501func (x *MultiAbiTargeting) GetAlternatives() []*MultiAbi { 1502 if x != nil { 1503 return x.Alternatives 1504 } 1505 return nil 1506} 1507 1508type ScreenDensityTargeting struct { 1509 state protoimpl.MessageState 1510 sizeCache protoimpl.SizeCache 1511 unknownFields protoimpl.UnknownFields 1512 1513 Value []*ScreenDensity `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"` 1514 // Targeting of other sibling directories that were in the Bundle. 1515 // For master splits this is targeting of other master splits. 1516 Alternatives []*ScreenDensity `protobuf:"bytes,2,rep,name=alternatives,proto3" json:"alternatives,omitempty"` 1517} 1518 1519func (x *ScreenDensityTargeting) Reset() { 1520 *x = ScreenDensityTargeting{} 1521 if protoimpl.UnsafeEnabled { 1522 mi := &file_targeting_proto_msgTypes[20] 1523 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1524 ms.StoreMessageInfo(mi) 1525 } 1526} 1527 1528func (x *ScreenDensityTargeting) String() string { 1529 return protoimpl.X.MessageStringOf(x) 1530} 1531 1532func (*ScreenDensityTargeting) ProtoMessage() {} 1533 1534func (x *ScreenDensityTargeting) ProtoReflect() protoreflect.Message { 1535 mi := &file_targeting_proto_msgTypes[20] 1536 if protoimpl.UnsafeEnabled && x != nil { 1537 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1538 if ms.LoadMessageInfo() == nil { 1539 ms.StoreMessageInfo(mi) 1540 } 1541 return ms 1542 } 1543 return mi.MessageOf(x) 1544} 1545 1546// Deprecated: Use ScreenDensityTargeting.ProtoReflect.Descriptor instead. 1547func (*ScreenDensityTargeting) Descriptor() ([]byte, []int) { 1548 return file_targeting_proto_rawDescGZIP(), []int{20} 1549} 1550 1551func (x *ScreenDensityTargeting) GetValue() []*ScreenDensity { 1552 if x != nil { 1553 return x.Value 1554 } 1555 return nil 1556} 1557 1558func (x *ScreenDensityTargeting) GetAlternatives() []*ScreenDensity { 1559 if x != nil { 1560 return x.Alternatives 1561 } 1562 return nil 1563} 1564 1565type LanguageTargeting struct { 1566 state protoimpl.MessageState 1567 sizeCache protoimpl.SizeCache 1568 unknownFields protoimpl.UnknownFields 1569 1570 // ISO-639: 2 or 3 letter language code. 1571 Value []string `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"` 1572 // Targeting of other sibling directories that were in the Bundle. 1573 // For master splits this is targeting of other master splits. 1574 Alternatives []string `protobuf:"bytes,2,rep,name=alternatives,proto3" json:"alternatives,omitempty"` 1575} 1576 1577func (x *LanguageTargeting) Reset() { 1578 *x = LanguageTargeting{} 1579 if protoimpl.UnsafeEnabled { 1580 mi := &file_targeting_proto_msgTypes[21] 1581 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1582 ms.StoreMessageInfo(mi) 1583 } 1584} 1585 1586func (x *LanguageTargeting) String() string { 1587 return protoimpl.X.MessageStringOf(x) 1588} 1589 1590func (*LanguageTargeting) ProtoMessage() {} 1591 1592func (x *LanguageTargeting) ProtoReflect() protoreflect.Message { 1593 mi := &file_targeting_proto_msgTypes[21] 1594 if protoimpl.UnsafeEnabled && x != nil { 1595 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1596 if ms.LoadMessageInfo() == nil { 1597 ms.StoreMessageInfo(mi) 1598 } 1599 return ms 1600 } 1601 return mi.MessageOf(x) 1602} 1603 1604// Deprecated: Use LanguageTargeting.ProtoReflect.Descriptor instead. 1605func (*LanguageTargeting) Descriptor() ([]byte, []int) { 1606 return file_targeting_proto_rawDescGZIP(), []int{21} 1607} 1608 1609func (x *LanguageTargeting) GetValue() []string { 1610 if x != nil { 1611 return x.Value 1612 } 1613 return nil 1614} 1615 1616func (x *LanguageTargeting) GetAlternatives() []string { 1617 if x != nil { 1618 return x.Alternatives 1619 } 1620 return nil 1621} 1622 1623type GraphicsApiTargeting struct { 1624 state protoimpl.MessageState 1625 sizeCache protoimpl.SizeCache 1626 unknownFields protoimpl.UnknownFields 1627 1628 Value []*GraphicsApi `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"` 1629 // Targeting of other sibling directories that were in the Bundle. 1630 // For master splits this is targeting of other master splits. 1631 Alternatives []*GraphicsApi `protobuf:"bytes,2,rep,name=alternatives,proto3" json:"alternatives,omitempty"` 1632} 1633 1634func (x *GraphicsApiTargeting) Reset() { 1635 *x = GraphicsApiTargeting{} 1636 if protoimpl.UnsafeEnabled { 1637 mi := &file_targeting_proto_msgTypes[22] 1638 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1639 ms.StoreMessageInfo(mi) 1640 } 1641} 1642 1643func (x *GraphicsApiTargeting) String() string { 1644 return protoimpl.X.MessageStringOf(x) 1645} 1646 1647func (*GraphicsApiTargeting) ProtoMessage() {} 1648 1649func (x *GraphicsApiTargeting) ProtoReflect() protoreflect.Message { 1650 mi := &file_targeting_proto_msgTypes[22] 1651 if protoimpl.UnsafeEnabled && x != nil { 1652 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1653 if ms.LoadMessageInfo() == nil { 1654 ms.StoreMessageInfo(mi) 1655 } 1656 return ms 1657 } 1658 return mi.MessageOf(x) 1659} 1660 1661// Deprecated: Use GraphicsApiTargeting.ProtoReflect.Descriptor instead. 1662func (*GraphicsApiTargeting) Descriptor() ([]byte, []int) { 1663 return file_targeting_proto_rawDescGZIP(), []int{22} 1664} 1665 1666func (x *GraphicsApiTargeting) GetValue() []*GraphicsApi { 1667 if x != nil { 1668 return x.Value 1669 } 1670 return nil 1671} 1672 1673func (x *GraphicsApiTargeting) GetAlternatives() []*GraphicsApi { 1674 if x != nil { 1675 return x.Alternatives 1676 } 1677 return nil 1678} 1679 1680type SdkVersionTargeting struct { 1681 state protoimpl.MessageState 1682 sizeCache protoimpl.SizeCache 1683 unknownFields protoimpl.UnknownFields 1684 1685 Value []*SdkVersion `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"` 1686 // Targeting of other sibling directories that were in the Bundle. 1687 // For master splits this is targeting of other master splits. 1688 Alternatives []*SdkVersion `protobuf:"bytes,2,rep,name=alternatives,proto3" json:"alternatives,omitempty"` 1689} 1690 1691func (x *SdkVersionTargeting) Reset() { 1692 *x = SdkVersionTargeting{} 1693 if protoimpl.UnsafeEnabled { 1694 mi := &file_targeting_proto_msgTypes[23] 1695 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1696 ms.StoreMessageInfo(mi) 1697 } 1698} 1699 1700func (x *SdkVersionTargeting) String() string { 1701 return protoimpl.X.MessageStringOf(x) 1702} 1703 1704func (*SdkVersionTargeting) ProtoMessage() {} 1705 1706func (x *SdkVersionTargeting) ProtoReflect() protoreflect.Message { 1707 mi := &file_targeting_proto_msgTypes[23] 1708 if protoimpl.UnsafeEnabled && x != nil { 1709 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1710 if ms.LoadMessageInfo() == nil { 1711 ms.StoreMessageInfo(mi) 1712 } 1713 return ms 1714 } 1715 return mi.MessageOf(x) 1716} 1717 1718// Deprecated: Use SdkVersionTargeting.ProtoReflect.Descriptor instead. 1719func (*SdkVersionTargeting) Descriptor() ([]byte, []int) { 1720 return file_targeting_proto_rawDescGZIP(), []int{23} 1721} 1722 1723func (x *SdkVersionTargeting) GetValue() []*SdkVersion { 1724 if x != nil { 1725 return x.Value 1726 } 1727 return nil 1728} 1729 1730func (x *SdkVersionTargeting) GetAlternatives() []*SdkVersion { 1731 if x != nil { 1732 return x.Alternatives 1733 } 1734 return nil 1735} 1736 1737type TextureCompressionFormatTargeting struct { 1738 state protoimpl.MessageState 1739 sizeCache protoimpl.SizeCache 1740 unknownFields protoimpl.UnknownFields 1741 1742 Value []*TextureCompressionFormat `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"` 1743 // Targeting of other sibling directories that were in the Bundle. 1744 // For master splits this is targeting of other master splits. 1745 Alternatives []*TextureCompressionFormat `protobuf:"bytes,2,rep,name=alternatives,proto3" json:"alternatives,omitempty"` 1746} 1747 1748func (x *TextureCompressionFormatTargeting) Reset() { 1749 *x = TextureCompressionFormatTargeting{} 1750 if protoimpl.UnsafeEnabled { 1751 mi := &file_targeting_proto_msgTypes[24] 1752 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1753 ms.StoreMessageInfo(mi) 1754 } 1755} 1756 1757func (x *TextureCompressionFormatTargeting) String() string { 1758 return protoimpl.X.MessageStringOf(x) 1759} 1760 1761func (*TextureCompressionFormatTargeting) ProtoMessage() {} 1762 1763func (x *TextureCompressionFormatTargeting) ProtoReflect() protoreflect.Message { 1764 mi := &file_targeting_proto_msgTypes[24] 1765 if protoimpl.UnsafeEnabled && x != nil { 1766 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1767 if ms.LoadMessageInfo() == nil { 1768 ms.StoreMessageInfo(mi) 1769 } 1770 return ms 1771 } 1772 return mi.MessageOf(x) 1773} 1774 1775// Deprecated: Use TextureCompressionFormatTargeting.ProtoReflect.Descriptor instead. 1776func (*TextureCompressionFormatTargeting) Descriptor() ([]byte, []int) { 1777 return file_targeting_proto_rawDescGZIP(), []int{24} 1778} 1779 1780func (x *TextureCompressionFormatTargeting) GetValue() []*TextureCompressionFormat { 1781 if x != nil { 1782 return x.Value 1783 } 1784 return nil 1785} 1786 1787func (x *TextureCompressionFormatTargeting) GetAlternatives() []*TextureCompressionFormat { 1788 if x != nil { 1789 return x.Alternatives 1790 } 1791 return nil 1792} 1793 1794type SanitizerTargeting struct { 1795 state protoimpl.MessageState 1796 sizeCache protoimpl.SizeCache 1797 unknownFields protoimpl.UnknownFields 1798 1799 Value []*Sanitizer `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"` 1800} 1801 1802func (x *SanitizerTargeting) Reset() { 1803 *x = SanitizerTargeting{} 1804 if protoimpl.UnsafeEnabled { 1805 mi := &file_targeting_proto_msgTypes[25] 1806 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1807 ms.StoreMessageInfo(mi) 1808 } 1809} 1810 1811func (x *SanitizerTargeting) String() string { 1812 return protoimpl.X.MessageStringOf(x) 1813} 1814 1815func (*SanitizerTargeting) ProtoMessage() {} 1816 1817func (x *SanitizerTargeting) ProtoReflect() protoreflect.Message { 1818 mi := &file_targeting_proto_msgTypes[25] 1819 if protoimpl.UnsafeEnabled && x != nil { 1820 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1821 if ms.LoadMessageInfo() == nil { 1822 ms.StoreMessageInfo(mi) 1823 } 1824 return ms 1825 } 1826 return mi.MessageOf(x) 1827} 1828 1829// Deprecated: Use SanitizerTargeting.ProtoReflect.Descriptor instead. 1830func (*SanitizerTargeting) Descriptor() ([]byte, []int) { 1831 return file_targeting_proto_rawDescGZIP(), []int{25} 1832} 1833 1834func (x *SanitizerTargeting) GetValue() []*Sanitizer { 1835 if x != nil { 1836 return x.Value 1837 } 1838 return nil 1839} 1840 1841// Since other atom targeting messages have the "OR" semantic on values 1842// the DeviceFeatureTargeting represents only one device feature to retain 1843// that convention. 1844type DeviceFeatureTargeting struct { 1845 state protoimpl.MessageState 1846 sizeCache protoimpl.SizeCache 1847 unknownFields protoimpl.UnknownFields 1848 1849 RequiredFeature *DeviceFeature `protobuf:"bytes,1,opt,name=required_feature,json=requiredFeature,proto3" json:"required_feature,omitempty"` 1850} 1851 1852func (x *DeviceFeatureTargeting) Reset() { 1853 *x = DeviceFeatureTargeting{} 1854 if protoimpl.UnsafeEnabled { 1855 mi := &file_targeting_proto_msgTypes[26] 1856 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1857 ms.StoreMessageInfo(mi) 1858 } 1859} 1860 1861func (x *DeviceFeatureTargeting) String() string { 1862 return protoimpl.X.MessageStringOf(x) 1863} 1864 1865func (*DeviceFeatureTargeting) ProtoMessage() {} 1866 1867func (x *DeviceFeatureTargeting) ProtoReflect() protoreflect.Message { 1868 mi := &file_targeting_proto_msgTypes[26] 1869 if protoimpl.UnsafeEnabled && x != nil { 1870 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1871 if ms.LoadMessageInfo() == nil { 1872 ms.StoreMessageInfo(mi) 1873 } 1874 return ms 1875 } 1876 return mi.MessageOf(x) 1877} 1878 1879// Deprecated: Use DeviceFeatureTargeting.ProtoReflect.Descriptor instead. 1880func (*DeviceFeatureTargeting) Descriptor() ([]byte, []int) { 1881 return file_targeting_proto_rawDescGZIP(), []int{26} 1882} 1883 1884func (x *DeviceFeatureTargeting) GetRequiredFeature() *DeviceFeature { 1885 if x != nil { 1886 return x.RequiredFeature 1887 } 1888 return nil 1889} 1890 1891var File_targeting_proto protoreflect.FileDescriptor 1892 1893var file_targeting_proto_rawDesc = []byte{ 1894 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1895 0x6f, 0x12, 0x0e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 1896 0x65, 0x22, 0xe8, 0x03, 0x0a, 0x10, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x61, 0x72, 1897 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x57, 0x0a, 0x15, 0x73, 0x64, 0x6b, 0x5f, 0x76, 0x65, 1898 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 1899 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 1900 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x53, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 1901 0x6e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x13, 0x73, 0x64, 0x6b, 0x56, 1902 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 1903 0x41, 0x0a, 0x0d, 0x61, 0x62, 0x69, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 1904 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 1905 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x41, 0x62, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 1906 0x74, 0x69, 0x6e, 0x67, 0x52, 0x0c, 0x61, 0x62, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 1907 0x6e, 0x67, 0x12, 0x60, 0x0a, 0x18, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x5f, 0x64, 0x65, 0x6e, 1908 0x73, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x03, 1909 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 1910 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x44, 0x65, 0x6e, 0x73, 1911 0x69, 0x74, 0x79, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x16, 0x73, 0x63, 1912 0x72, 0x65, 0x65, 0x6e, 0x44, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 0x54, 0x61, 0x72, 0x67, 0x65, 1913 0x74, 0x69, 0x6e, 0x67, 0x12, 0x51, 0x0a, 0x13, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x61, 0x62, 1914 0x69, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 1915 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 1916 0x6c, 0x65, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x41, 0x62, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 1917 0x74, 0x69, 0x6e, 0x67, 0x52, 0x11, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x41, 0x62, 0x69, 0x54, 0x61, 1918 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x82, 0x01, 0x0a, 0x24, 0x74, 0x65, 0x78, 0x74, 1919 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 1920 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 1921 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 1922 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 1923 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 1924 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x21, 0x74, 0x65, 0x78, 0x74, 0x75, 1925 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 1926 0x6d, 0x61, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x22, 0xe7, 0x05, 0x0a, 1927 0x0c, 0x41, 0x70, 0x6b, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x41, 0x0a, 1928 0x0d, 0x61, 0x62, 0x69, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x01, 1929 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 1930 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x41, 0x62, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 1931 0x6e, 0x67, 0x52, 0x0c, 0x61, 0x62, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 1932 0x12, 0x5a, 0x0a, 0x16, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x5f, 0x61, 0x70, 0x69, 1933 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 1934 0x32, 0x24, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 1935 0x65, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x41, 0x70, 0x69, 0x54, 0x61, 0x72, 1936 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x14, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 1937 0x41, 0x70, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x50, 0x0a, 0x12, 1938 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 1939 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 1940 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 1941 0x67, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x11, 0x6c, 0x61, 0x6e, 1942 0x67, 0x75, 0x61, 0x67, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x60, 1943 0x0a, 0x18, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x5f, 0x64, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 1944 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 1945 0x32, 0x26, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 1946 0x65, 0x2e, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x44, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 0x54, 1947 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x16, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 1948 0x44, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 1949 0x12, 0x57, 0x0a, 0x15, 0x73, 0x64, 0x6b, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 1950 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 1951 0x23, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 1952 0x2e, 0x53, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x72, 0x67, 0x65, 1953 0x74, 0x69, 0x6e, 0x67, 0x52, 0x13, 0x73, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 1954 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x82, 0x01, 0x0a, 0x24, 0x74, 0x65, 1955 0x78, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 1956 0x6e, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 1957 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 1958 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 1959 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 1960 0x61, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x21, 0x74, 0x65, 0x78, 1961 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46, 1962 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x51, 1963 0x0a, 0x13, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x61, 0x62, 0x69, 0x5f, 0x74, 0x61, 0x72, 0x67, 1964 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x6e, 1965 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x4d, 0x75, 0x6c, 1966 0x74, 0x69, 0x41, 0x62, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x11, 1967 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x41, 0x62, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 1968 0x67, 0x12, 0x53, 0x0a, 0x13, 0x73, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x74, 1969 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 1970 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 1971 0x53, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 1972 0x6e, 0x67, 0x52, 0x12, 0x73, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x72, 0x54, 0x61, 0x72, 1973 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x22, 0xae, 0x02, 0x0a, 0x0f, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 1974 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x57, 0x0a, 0x15, 0x73, 0x64, 1975 0x6b, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 1976 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x61, 0x6e, 0x64, 0x72, 1977 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x53, 0x64, 0x6b, 0x56, 0x65, 1978 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x13, 1979 0x73, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 1980 0x69, 0x6e, 0x67, 0x12, 0x60, 0x0a, 0x18, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x65, 1981 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x18, 1982 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 1983 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x46, 0x65, 0x61, 1984 0x74, 0x75, 0x72, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x16, 0x64, 1985 0x65, 0x76, 0x69, 0x63, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x54, 0x61, 0x72, 0x67, 1986 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x60, 0x0a, 0x18, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x63, 0x6f, 1987 0x75, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 1988 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 1989 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 1990 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 1991 0x16, 0x75, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x54, 0x61, 1992 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x22, 0x57, 0x0a, 0x16, 0x55, 0x73, 0x65, 0x72, 0x43, 1993 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 1994 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 1995 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 1996 0x79, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 1997 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 1998 0x22, 0x97, 0x02, 0x0a, 0x0d, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x44, 0x65, 0x6e, 0x73, 0x69, 1999 0x74, 0x79, 0x12, 0x51, 0x0a, 0x0d, 0x64, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 0x5f, 0x61, 0x6c, 2000 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x61, 0x6e, 0x64, 0x72, 2001 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x53, 0x63, 0x72, 0x65, 0x65, 2002 0x6e, 0x44, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 0x2e, 0x44, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 2003 0x41, 0x6c, 0x69, 0x61, 0x73, 0x48, 0x00, 0x52, 0x0c, 0x64, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 2004 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x21, 0x0a, 0x0b, 0x64, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 2005 0x5f, 0x64, 0x70, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0a, 0x64, 0x65, 2006 0x6e, 0x73, 0x69, 0x74, 0x79, 0x44, 0x70, 0x69, 0x22, 0x7f, 0x0a, 0x0c, 0x44, 0x65, 0x6e, 0x73, 2007 0x69, 0x74, 0x79, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x45, 0x4e, 0x53, 2008 0x49, 0x54, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 2009 0x00, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x4f, 0x44, 0x50, 0x49, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 2010 0x4c, 0x44, 0x50, 0x49, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x4d, 0x44, 0x50, 0x49, 0x10, 0x03, 2011 0x12, 0x09, 0x0a, 0x05, 0x54, 0x56, 0x44, 0x50, 0x49, 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, 0x48, 2012 0x44, 0x50, 0x49, 0x10, 0x05, 0x12, 0x09, 0x0a, 0x05, 0x58, 0x48, 0x44, 0x50, 0x49, 0x10, 0x06, 2013 0x12, 0x0a, 0x0a, 0x06, 0x58, 0x58, 0x48, 0x44, 0x50, 0x49, 0x10, 0x07, 0x12, 0x0b, 0x0a, 0x07, 2014 0x58, 0x58, 0x58, 0x48, 0x44, 0x50, 0x49, 0x10, 0x08, 0x42, 0x0f, 0x0a, 0x0d, 0x64, 0x65, 0x6e, 2015 0x73, 0x69, 0x74, 0x79, 0x5f, 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x22, 0x22, 0x0a, 0x0a, 0x49, 0x6e, 2016 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 2017 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x3a, 2018 0x0a, 0x0a, 0x53, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x03, 2019 0x6d, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x6e, 0x64, 0x72, 2020 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 2021 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x03, 0x6d, 0x69, 0x6e, 0x22, 0xb9, 0x01, 0x0a, 0x0b, 0x47, 2022 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x41, 0x70, 0x69, 0x12, 0x4e, 0x0a, 0x13, 0x6d, 0x69, 2023 0x6e, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x67, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 2024 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 2025 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x47, 0x6c, 0x56, 2026 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x6d, 0x69, 0x6e, 0x4f, 0x70, 0x65, 2027 0x6e, 0x47, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x4d, 0x0a, 0x12, 0x6d, 0x69, 2028 0x6e, 0x5f, 0x76, 0x75, 0x6c, 0x6b, 0x61, 0x6e, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 2029 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 2030 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x56, 0x75, 0x6c, 0x6b, 0x61, 0x6e, 0x56, 0x65, 2031 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x6d, 0x69, 0x6e, 0x56, 0x75, 0x6c, 0x6b, 2032 0x61, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x0b, 0x0a, 0x09, 0x61, 0x70, 0x69, 2033 0x5f, 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x22, 0x3b, 0x0a, 0x0d, 0x56, 0x75, 0x6c, 0x6b, 0x61, 0x6e, 2034 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 2035 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x12, 0x14, 0x0a, 2036 0x05, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6d, 0x69, 2037 0x6e, 0x6f, 0x72, 0x22, 0x3b, 0x0a, 0x0d, 0x4f, 0x70, 0x65, 0x6e, 0x47, 0x6c, 0x56, 0x65, 0x72, 2038 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x18, 0x01, 0x20, 2039 0x01, 0x28, 0x05, 0x52, 0x05, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x69, 2040 0x6e, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 2041 0x22, 0xb7, 0x02, 0x0a, 0x18, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 2042 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x5c, 0x0a, 2043 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x46, 0x2e, 0x61, 2044 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x54, 0x65, 2045 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 2046 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 2047 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x41, 2048 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0xbc, 0x01, 0x0a, 0x1d, 2049 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 2050 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x2a, 0x0a, 2051 0x26, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x5f, 0x54, 0x45, 0x58, 2052 0x54, 0x55, 0x52, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 2053 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x45, 0x54, 0x43, 2054 0x31, 0x5f, 0x52, 0x47, 0x42, 0x38, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x41, 0x4c, 0x45, 2055 0x54, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x48, 0x52, 0x45, 0x45, 0x5f, 2056 0x44, 0x43, 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x54, 0x43, 0x10, 0x04, 0x12, 0x08, 0x0a, 2057 0x04, 0x4c, 0x41, 0x54, 0x43, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x58, 0x54, 0x31, 0x10, 2058 0x06, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x33, 0x54, 0x43, 0x10, 0x07, 0x12, 0x09, 0x0a, 0x05, 0x50, 2059 0x56, 0x52, 0x54, 0x43, 0x10, 0x08, 0x12, 0x08, 0x0a, 0x04, 0x41, 0x53, 0x54, 0x43, 0x10, 0x09, 2060 0x12, 0x08, 0x0a, 0x04, 0x45, 0x54, 0x43, 0x32, 0x10, 0x0a, 0x22, 0xc0, 0x01, 0x0a, 0x03, 0x41, 2061 0x62, 0x69, 0x12, 0x32, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 2062 0x0e, 0x32, 0x1c, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 2063 0x6c, 0x65, 0x2e, 0x41, 0x62, 0x69, 0x2e, 0x41, 0x62, 0x69, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 2064 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0x84, 0x01, 0x0a, 0x08, 0x41, 0x62, 0x69, 0x41, 0x6c, 2065 0x69, 0x61, 0x73, 0x12, 0x20, 0x0a, 0x1c, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 2066 0x45, 0x44, 0x5f, 0x43, 0x50, 0x55, 0x5f, 0x41, 0x52, 0x43, 0x48, 0x49, 0x54, 0x45, 0x43, 0x54, 2067 0x55, 0x52, 0x45, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x41, 0x52, 0x4d, 0x45, 0x41, 0x42, 0x49, 2068 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x52, 0x4d, 0x45, 0x41, 0x42, 0x49, 0x5f, 0x56, 0x37, 2069 0x41, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x52, 0x4d, 0x36, 0x34, 0x5f, 0x56, 0x38, 0x41, 2070 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x58, 0x38, 0x36, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x58, 2071 0x38, 0x36, 0x5f, 0x36, 0x34, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x4d, 0x49, 0x50, 0x53, 0x10, 2072 0x06, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x49, 0x50, 0x53, 0x36, 0x34, 0x10, 0x07, 0x22, 0x31, 0x0a, 2073 0x08, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x41, 0x62, 0x69, 0x12, 0x25, 0x0a, 0x03, 0x61, 0x62, 0x69, 2074 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 2075 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x41, 0x62, 0x69, 0x52, 0x03, 0x61, 0x62, 0x69, 2076 0x22, 0x76, 0x0a, 0x09, 0x53, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x72, 0x12, 0x3e, 0x0a, 2077 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x61, 2078 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x53, 0x61, 2079 0x6e, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x72, 0x2e, 0x53, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x7a, 0x65, 2080 0x72, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0x29, 0x0a, 2081 0x0e, 0x53, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x72, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 2082 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x48, 0x57, 0x41, 2083 0x44, 0x44, 0x52, 0x45, 0x53, 0x53, 0x10, 0x01, 0x22, 0x5b, 0x0a, 0x0d, 0x44, 0x65, 0x76, 0x69, 2084 0x63, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x65, 0x61, 2085 0x74, 0x75, 0x72, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 2086 0x0b, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 2087 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 2088 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x65, 2089 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xc3, 0x02, 0x0a, 0x18, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 2090 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 2091 0x6e, 0x67, 0x12, 0x2e, 0x0a, 0x03, 0x61, 0x62, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 2092 0x1c, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 2093 0x2e, 0x41, 0x62, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x03, 0x61, 2094 0x62, 0x69, 0x12, 0x47, 0x0a, 0x0c, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x5f, 0x61, 2095 0x70, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 2096 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 2097 0x63, 0x73, 0x41, 0x70, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x0b, 2098 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x41, 0x70, 0x69, 0x12, 0x6f, 0x0a, 0x1a, 0x74, 2099 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 2100 0x6f, 0x6e, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 2101 0x31, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 2102 0x2e, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 2103 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 2104 0x6e, 0x67, 0x52, 0x18, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x72, 2105 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x3d, 0x0a, 0x08, 2106 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 2107 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 2108 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 2109 0x67, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x22, 0xa2, 0x02, 0x0a, 0x18, 2110 0x4e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x54, 2111 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x25, 0x0a, 0x03, 0x61, 0x62, 0x69, 0x18, 2112 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 2113 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x41, 0x62, 0x69, 0x52, 0x03, 0x61, 0x62, 0x69, 0x12, 2114 0x3e, 0x0a, 0x0c, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x5f, 0x61, 0x70, 0x69, 0x18, 2115 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 2116 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x41, 2117 0x70, 0x69, 0x52, 0x0b, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x41, 0x70, 0x69, 0x12, 2118 0x66, 0x0a, 0x1a, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 2119 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 2120 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 2121 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 2122 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x18, 0x74, 2123 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 2124 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x37, 0x0a, 0x09, 0x73, 0x61, 0x6e, 0x69, 0x74, 2125 0x69, 0x7a, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x6e, 0x64, 2126 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x53, 0x61, 0x6e, 0x69, 2127 0x74, 0x69, 0x7a, 0x65, 0x72, 0x52, 0x09, 0x73, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x72, 2128 0x22, 0x54, 0x0a, 0x12, 0x41, 0x70, 0x65, 0x78, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x72, 2129 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x3e, 0x0a, 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 2130 0x61, 0x62, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x6e, 0x64, 0x72, 2131 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 2132 0x41, 0x62, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x6d, 0x75, 2133 0x6c, 0x74, 0x69, 0x41, 0x62, 0x69, 0x22, 0x72, 0x0a, 0x0c, 0x41, 0x62, 0x69, 0x54, 0x61, 0x72, 2134 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x29, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 2135 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 2136 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x41, 0x62, 0x69, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 2137 0x65, 0x12, 0x37, 0x0a, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 2138 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 2139 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x41, 0x62, 0x69, 0x52, 0x0c, 0x61, 0x6c, 2140 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x22, 0x81, 0x01, 0x0a, 0x11, 0x4d, 2141 0x75, 0x6c, 0x74, 0x69, 0x41, 0x62, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 2142 0x12, 0x2e, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 2143 0x18, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 2144 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x41, 0x62, 0x69, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 2145 0x12, 0x3c, 0x0a, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 2146 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 2147 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x41, 0x62, 0x69, 2148 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x22, 0x90, 2149 0x01, 0x0a, 0x16, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x44, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 2150 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x33, 0x0a, 0x05, 0x76, 0x61, 0x6c, 2151 0x75, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 2152 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 2153 0x44, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x41, 2154 0x0a, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x02, 2155 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 2156 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x44, 0x65, 0x6e, 0x73, 2157 0x69, 0x74, 0x79, 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 2158 0x73, 0x22, 0x4d, 0x0a, 0x11, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x54, 0x61, 0x72, 2159 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 2160 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x22, 0x0a, 0x0c, 2161 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 2162 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 2163 0x22, 0x8a, 0x01, 0x0a, 0x14, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x41, 0x70, 0x69, 2164 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x31, 0x0a, 0x05, 0x76, 0x61, 0x6c, 2165 0x75, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 2166 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 2167 0x63, 0x73, 0x41, 0x70, 0x69, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x0c, 2168 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 2169 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 2170 0x64, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x41, 0x70, 0x69, 0x52, 2171 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x22, 0x87, 0x01, 2172 0x0a, 0x13, 0x53, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x72, 0x67, 2173 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x30, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 2174 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 2175 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x53, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 2176 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3e, 0x0a, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 2177 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 2178 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x53, 2179 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 2180 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x22, 0xb1, 0x01, 0x0a, 0x21, 0x54, 0x65, 0x78, 0x74, 2181 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 2182 0x72, 0x6d, 0x61, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x3e, 0x0a, 2183 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x61, 2184 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x54, 0x65, 2185 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 2186 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4c, 0x0a, 2187 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x02, 0x20, 2188 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 2189 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x70, 2190 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x0c, 0x61, 2191 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x22, 0x45, 0x0a, 0x12, 0x53, 2192 0x61, 0x6e, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 2193 0x67, 0x12, 0x2f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 2194 0x32, 0x19, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 2195 0x65, 0x2e, 0x53, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 2196 0x75, 0x65, 0x22, 0x62, 0x0a, 0x16, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x46, 0x65, 0x61, 0x74, 2197 0x75, 0x72, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x48, 0x0a, 0x10, 2198 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 2199 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 2200 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x46, 0x65, 2201 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x46, 2202 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x41, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x2e, 0x61, 0x6e, 2203 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2e, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5a, 0x2b, 0x61, 0x6e, 2204 0x64, 0x72, 0x6f, 0x69, 0x64, 0x2f, 0x73, 0x6f, 0x6f, 0x6e, 0x67, 0x2f, 0x63, 0x6d, 0x64, 0x2f, 2205 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x70, 0x6b, 0x73, 0x2f, 0x62, 0x75, 0x6e, 2206 0x64, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 2207 0x33, 2208} 2209 2210var ( 2211 file_targeting_proto_rawDescOnce sync.Once 2212 file_targeting_proto_rawDescData = file_targeting_proto_rawDesc 2213) 2214 2215func file_targeting_proto_rawDescGZIP() []byte { 2216 file_targeting_proto_rawDescOnce.Do(func() { 2217 file_targeting_proto_rawDescData = protoimpl.X.CompressGZIP(file_targeting_proto_rawDescData) 2218 }) 2219 return file_targeting_proto_rawDescData 2220} 2221 2222var file_targeting_proto_enumTypes = make([]protoimpl.EnumInfo, 4) 2223var file_targeting_proto_msgTypes = make([]protoimpl.MessageInfo, 27) 2224var file_targeting_proto_goTypes = []interface{}{ 2225 (ScreenDensity_DensityAlias)(0), // 0: android.bundle.ScreenDensity.DensityAlias 2226 (TextureCompressionFormat_TextureCompressionFormatAlias)(0), // 1: android.bundle.TextureCompressionFormat.TextureCompressionFormatAlias 2227 (Abi_AbiAlias)(0), // 2: android.bundle.Abi.AbiAlias 2228 (Sanitizer_SanitizerAlias)(0), // 3: android.bundle.Sanitizer.SanitizerAlias 2229 (*VariantTargeting)(nil), // 4: android.bundle.VariantTargeting 2230 (*ApkTargeting)(nil), // 5: android.bundle.ApkTargeting 2231 (*ModuleTargeting)(nil), // 6: android.bundle.ModuleTargeting 2232 (*UserCountriesTargeting)(nil), // 7: android.bundle.UserCountriesTargeting 2233 (*ScreenDensity)(nil), // 8: android.bundle.ScreenDensity 2234 (*Int32Value)(nil), // 9: android.bundle.Int32Value 2235 (*SdkVersion)(nil), // 10: android.bundle.SdkVersion 2236 (*GraphicsApi)(nil), // 11: android.bundle.GraphicsApi 2237 (*VulkanVersion)(nil), // 12: android.bundle.VulkanVersion 2238 (*OpenGlVersion)(nil), // 13: android.bundle.OpenGlVersion 2239 (*TextureCompressionFormat)(nil), // 14: android.bundle.TextureCompressionFormat 2240 (*Abi)(nil), // 15: android.bundle.Abi 2241 (*MultiAbi)(nil), // 16: android.bundle.MultiAbi 2242 (*Sanitizer)(nil), // 17: android.bundle.Sanitizer 2243 (*DeviceFeature)(nil), // 18: android.bundle.DeviceFeature 2244 (*AssetsDirectoryTargeting)(nil), // 19: android.bundle.AssetsDirectoryTargeting 2245 (*NativeDirectoryTargeting)(nil), // 20: android.bundle.NativeDirectoryTargeting 2246 (*ApexImageTargeting)(nil), // 21: android.bundle.ApexImageTargeting 2247 (*AbiTargeting)(nil), // 22: android.bundle.AbiTargeting 2248 (*MultiAbiTargeting)(nil), // 23: android.bundle.MultiAbiTargeting 2249 (*ScreenDensityTargeting)(nil), // 24: android.bundle.ScreenDensityTargeting 2250 (*LanguageTargeting)(nil), // 25: android.bundle.LanguageTargeting 2251 (*GraphicsApiTargeting)(nil), // 26: android.bundle.GraphicsApiTargeting 2252 (*SdkVersionTargeting)(nil), // 27: android.bundle.SdkVersionTargeting 2253 (*TextureCompressionFormatTargeting)(nil), // 28: android.bundle.TextureCompressionFormatTargeting 2254 (*SanitizerTargeting)(nil), // 29: android.bundle.SanitizerTargeting 2255 (*DeviceFeatureTargeting)(nil), // 30: android.bundle.DeviceFeatureTargeting 2256} 2257var file_targeting_proto_depIdxs = []int32{ 2258 27, // 0: android.bundle.VariantTargeting.sdk_version_targeting:type_name -> android.bundle.SdkVersionTargeting 2259 22, // 1: android.bundle.VariantTargeting.abi_targeting:type_name -> android.bundle.AbiTargeting 2260 24, // 2: android.bundle.VariantTargeting.screen_density_targeting:type_name -> android.bundle.ScreenDensityTargeting 2261 23, // 3: android.bundle.VariantTargeting.multi_abi_targeting:type_name -> android.bundle.MultiAbiTargeting 2262 28, // 4: android.bundle.VariantTargeting.texture_compression_format_targeting:type_name -> android.bundle.TextureCompressionFormatTargeting 2263 22, // 5: android.bundle.ApkTargeting.abi_targeting:type_name -> android.bundle.AbiTargeting 2264 26, // 6: android.bundle.ApkTargeting.graphics_api_targeting:type_name -> android.bundle.GraphicsApiTargeting 2265 25, // 7: android.bundle.ApkTargeting.language_targeting:type_name -> android.bundle.LanguageTargeting 2266 24, // 8: android.bundle.ApkTargeting.screen_density_targeting:type_name -> android.bundle.ScreenDensityTargeting 2267 27, // 9: android.bundle.ApkTargeting.sdk_version_targeting:type_name -> android.bundle.SdkVersionTargeting 2268 28, // 10: android.bundle.ApkTargeting.texture_compression_format_targeting:type_name -> android.bundle.TextureCompressionFormatTargeting 2269 23, // 11: android.bundle.ApkTargeting.multi_abi_targeting:type_name -> android.bundle.MultiAbiTargeting 2270 29, // 12: android.bundle.ApkTargeting.sanitizer_targeting:type_name -> android.bundle.SanitizerTargeting 2271 27, // 13: android.bundle.ModuleTargeting.sdk_version_targeting:type_name -> android.bundle.SdkVersionTargeting 2272 30, // 14: android.bundle.ModuleTargeting.device_feature_targeting:type_name -> android.bundle.DeviceFeatureTargeting 2273 7, // 15: android.bundle.ModuleTargeting.user_countries_targeting:type_name -> android.bundle.UserCountriesTargeting 2274 0, // 16: android.bundle.ScreenDensity.density_alias:type_name -> android.bundle.ScreenDensity.DensityAlias 2275 9, // 17: android.bundle.SdkVersion.min:type_name -> android.bundle.Int32Value 2276 13, // 18: android.bundle.GraphicsApi.min_open_gl_version:type_name -> android.bundle.OpenGlVersion 2277 12, // 19: android.bundle.GraphicsApi.min_vulkan_version:type_name -> android.bundle.VulkanVersion 2278 1, // 20: android.bundle.TextureCompressionFormat.alias:type_name -> android.bundle.TextureCompressionFormat.TextureCompressionFormatAlias 2279 2, // 21: android.bundle.Abi.alias:type_name -> android.bundle.Abi.AbiAlias 2280 15, // 22: android.bundle.MultiAbi.abi:type_name -> android.bundle.Abi 2281 3, // 23: android.bundle.Sanitizer.alias:type_name -> android.bundle.Sanitizer.SanitizerAlias 2282 22, // 24: android.bundle.AssetsDirectoryTargeting.abi:type_name -> android.bundle.AbiTargeting 2283 26, // 25: android.bundle.AssetsDirectoryTargeting.graphics_api:type_name -> android.bundle.GraphicsApiTargeting 2284 28, // 26: android.bundle.AssetsDirectoryTargeting.texture_compression_format:type_name -> android.bundle.TextureCompressionFormatTargeting 2285 25, // 27: android.bundle.AssetsDirectoryTargeting.language:type_name -> android.bundle.LanguageTargeting 2286 15, // 28: android.bundle.NativeDirectoryTargeting.abi:type_name -> android.bundle.Abi 2287 11, // 29: android.bundle.NativeDirectoryTargeting.graphics_api:type_name -> android.bundle.GraphicsApi 2288 14, // 30: android.bundle.NativeDirectoryTargeting.texture_compression_format:type_name -> android.bundle.TextureCompressionFormat 2289 17, // 31: android.bundle.NativeDirectoryTargeting.sanitizer:type_name -> android.bundle.Sanitizer 2290 23, // 32: android.bundle.ApexImageTargeting.multi_abi:type_name -> android.bundle.MultiAbiTargeting 2291 15, // 33: android.bundle.AbiTargeting.value:type_name -> android.bundle.Abi 2292 15, // 34: android.bundle.AbiTargeting.alternatives:type_name -> android.bundle.Abi 2293 16, // 35: android.bundle.MultiAbiTargeting.value:type_name -> android.bundle.MultiAbi 2294 16, // 36: android.bundle.MultiAbiTargeting.alternatives:type_name -> android.bundle.MultiAbi 2295 8, // 37: android.bundle.ScreenDensityTargeting.value:type_name -> android.bundle.ScreenDensity 2296 8, // 38: android.bundle.ScreenDensityTargeting.alternatives:type_name -> android.bundle.ScreenDensity 2297 11, // 39: android.bundle.GraphicsApiTargeting.value:type_name -> android.bundle.GraphicsApi 2298 11, // 40: android.bundle.GraphicsApiTargeting.alternatives:type_name -> android.bundle.GraphicsApi 2299 10, // 41: android.bundle.SdkVersionTargeting.value:type_name -> android.bundle.SdkVersion 2300 10, // 42: android.bundle.SdkVersionTargeting.alternatives:type_name -> android.bundle.SdkVersion 2301 14, // 43: android.bundle.TextureCompressionFormatTargeting.value:type_name -> android.bundle.TextureCompressionFormat 2302 14, // 44: android.bundle.TextureCompressionFormatTargeting.alternatives:type_name -> android.bundle.TextureCompressionFormat 2303 17, // 45: android.bundle.SanitizerTargeting.value:type_name -> android.bundle.Sanitizer 2304 18, // 46: android.bundle.DeviceFeatureTargeting.required_feature:type_name -> android.bundle.DeviceFeature 2305 47, // [47:47] is the sub-list for method output_type 2306 47, // [47:47] is the sub-list for method input_type 2307 47, // [47:47] is the sub-list for extension type_name 2308 47, // [47:47] is the sub-list for extension extendee 2309 0, // [0:47] is the sub-list for field type_name 2310} 2311 2312func init() { file_targeting_proto_init() } 2313func file_targeting_proto_init() { 2314 if File_targeting_proto != nil { 2315 return 2316 } 2317 if !protoimpl.UnsafeEnabled { 2318 file_targeting_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 2319 switch v := v.(*VariantTargeting); i { 2320 case 0: 2321 return &v.state 2322 case 1: 2323 return &v.sizeCache 2324 case 2: 2325 return &v.unknownFields 2326 default: 2327 return nil 2328 } 2329 } 2330 file_targeting_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 2331 switch v := v.(*ApkTargeting); i { 2332 case 0: 2333 return &v.state 2334 case 1: 2335 return &v.sizeCache 2336 case 2: 2337 return &v.unknownFields 2338 default: 2339 return nil 2340 } 2341 } 2342 file_targeting_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 2343 switch v := v.(*ModuleTargeting); i { 2344 case 0: 2345 return &v.state 2346 case 1: 2347 return &v.sizeCache 2348 case 2: 2349 return &v.unknownFields 2350 default: 2351 return nil 2352 } 2353 } 2354 file_targeting_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 2355 switch v := v.(*UserCountriesTargeting); i { 2356 case 0: 2357 return &v.state 2358 case 1: 2359 return &v.sizeCache 2360 case 2: 2361 return &v.unknownFields 2362 default: 2363 return nil 2364 } 2365 } 2366 file_targeting_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 2367 switch v := v.(*ScreenDensity); i { 2368 case 0: 2369 return &v.state 2370 case 1: 2371 return &v.sizeCache 2372 case 2: 2373 return &v.unknownFields 2374 default: 2375 return nil 2376 } 2377 } 2378 file_targeting_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 2379 switch v := v.(*Int32Value); i { 2380 case 0: 2381 return &v.state 2382 case 1: 2383 return &v.sizeCache 2384 case 2: 2385 return &v.unknownFields 2386 default: 2387 return nil 2388 } 2389 } 2390 file_targeting_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 2391 switch v := v.(*SdkVersion); i { 2392 case 0: 2393 return &v.state 2394 case 1: 2395 return &v.sizeCache 2396 case 2: 2397 return &v.unknownFields 2398 default: 2399 return nil 2400 } 2401 } 2402 file_targeting_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 2403 switch v := v.(*GraphicsApi); i { 2404 case 0: 2405 return &v.state 2406 case 1: 2407 return &v.sizeCache 2408 case 2: 2409 return &v.unknownFields 2410 default: 2411 return nil 2412 } 2413 } 2414 file_targeting_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 2415 switch v := v.(*VulkanVersion); i { 2416 case 0: 2417 return &v.state 2418 case 1: 2419 return &v.sizeCache 2420 case 2: 2421 return &v.unknownFields 2422 default: 2423 return nil 2424 } 2425 } 2426 file_targeting_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 2427 switch v := v.(*OpenGlVersion); i { 2428 case 0: 2429 return &v.state 2430 case 1: 2431 return &v.sizeCache 2432 case 2: 2433 return &v.unknownFields 2434 default: 2435 return nil 2436 } 2437 } 2438 file_targeting_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 2439 switch v := v.(*TextureCompressionFormat); i { 2440 case 0: 2441 return &v.state 2442 case 1: 2443 return &v.sizeCache 2444 case 2: 2445 return &v.unknownFields 2446 default: 2447 return nil 2448 } 2449 } 2450 file_targeting_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 2451 switch v := v.(*Abi); i { 2452 case 0: 2453 return &v.state 2454 case 1: 2455 return &v.sizeCache 2456 case 2: 2457 return &v.unknownFields 2458 default: 2459 return nil 2460 } 2461 } 2462 file_targeting_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 2463 switch v := v.(*MultiAbi); i { 2464 case 0: 2465 return &v.state 2466 case 1: 2467 return &v.sizeCache 2468 case 2: 2469 return &v.unknownFields 2470 default: 2471 return nil 2472 } 2473 } 2474 file_targeting_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 2475 switch v := v.(*Sanitizer); i { 2476 case 0: 2477 return &v.state 2478 case 1: 2479 return &v.sizeCache 2480 case 2: 2481 return &v.unknownFields 2482 default: 2483 return nil 2484 } 2485 } 2486 file_targeting_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 2487 switch v := v.(*DeviceFeature); i { 2488 case 0: 2489 return &v.state 2490 case 1: 2491 return &v.sizeCache 2492 case 2: 2493 return &v.unknownFields 2494 default: 2495 return nil 2496 } 2497 } 2498 file_targeting_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 2499 switch v := v.(*AssetsDirectoryTargeting); i { 2500 case 0: 2501 return &v.state 2502 case 1: 2503 return &v.sizeCache 2504 case 2: 2505 return &v.unknownFields 2506 default: 2507 return nil 2508 } 2509 } 2510 file_targeting_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 2511 switch v := v.(*NativeDirectoryTargeting); i { 2512 case 0: 2513 return &v.state 2514 case 1: 2515 return &v.sizeCache 2516 case 2: 2517 return &v.unknownFields 2518 default: 2519 return nil 2520 } 2521 } 2522 file_targeting_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 2523 switch v := v.(*ApexImageTargeting); i { 2524 case 0: 2525 return &v.state 2526 case 1: 2527 return &v.sizeCache 2528 case 2: 2529 return &v.unknownFields 2530 default: 2531 return nil 2532 } 2533 } 2534 file_targeting_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 2535 switch v := v.(*AbiTargeting); i { 2536 case 0: 2537 return &v.state 2538 case 1: 2539 return &v.sizeCache 2540 case 2: 2541 return &v.unknownFields 2542 default: 2543 return nil 2544 } 2545 } 2546 file_targeting_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 2547 switch v := v.(*MultiAbiTargeting); i { 2548 case 0: 2549 return &v.state 2550 case 1: 2551 return &v.sizeCache 2552 case 2: 2553 return &v.unknownFields 2554 default: 2555 return nil 2556 } 2557 } 2558 file_targeting_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { 2559 switch v := v.(*ScreenDensityTargeting); i { 2560 case 0: 2561 return &v.state 2562 case 1: 2563 return &v.sizeCache 2564 case 2: 2565 return &v.unknownFields 2566 default: 2567 return nil 2568 } 2569 } 2570 file_targeting_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { 2571 switch v := v.(*LanguageTargeting); i { 2572 case 0: 2573 return &v.state 2574 case 1: 2575 return &v.sizeCache 2576 case 2: 2577 return &v.unknownFields 2578 default: 2579 return nil 2580 } 2581 } 2582 file_targeting_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { 2583 switch v := v.(*GraphicsApiTargeting); i { 2584 case 0: 2585 return &v.state 2586 case 1: 2587 return &v.sizeCache 2588 case 2: 2589 return &v.unknownFields 2590 default: 2591 return nil 2592 } 2593 } 2594 file_targeting_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { 2595 switch v := v.(*SdkVersionTargeting); i { 2596 case 0: 2597 return &v.state 2598 case 1: 2599 return &v.sizeCache 2600 case 2: 2601 return &v.unknownFields 2602 default: 2603 return nil 2604 } 2605 } 2606 file_targeting_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { 2607 switch v := v.(*TextureCompressionFormatTargeting); i { 2608 case 0: 2609 return &v.state 2610 case 1: 2611 return &v.sizeCache 2612 case 2: 2613 return &v.unknownFields 2614 default: 2615 return nil 2616 } 2617 } 2618 file_targeting_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { 2619 switch v := v.(*SanitizerTargeting); i { 2620 case 0: 2621 return &v.state 2622 case 1: 2623 return &v.sizeCache 2624 case 2: 2625 return &v.unknownFields 2626 default: 2627 return nil 2628 } 2629 } 2630 file_targeting_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { 2631 switch v := v.(*DeviceFeatureTargeting); i { 2632 case 0: 2633 return &v.state 2634 case 1: 2635 return &v.sizeCache 2636 case 2: 2637 return &v.unknownFields 2638 default: 2639 return nil 2640 } 2641 } 2642 } 2643 file_targeting_proto_msgTypes[4].OneofWrappers = []interface{}{ 2644 (*ScreenDensity_DensityAlias_)(nil), 2645 (*ScreenDensity_DensityDpi)(nil), 2646 } 2647 file_targeting_proto_msgTypes[7].OneofWrappers = []interface{}{ 2648 (*GraphicsApi_MinOpenGlVersion)(nil), 2649 (*GraphicsApi_MinVulkanVersion)(nil), 2650 } 2651 type x struct{} 2652 out := protoimpl.TypeBuilder{ 2653 File: protoimpl.DescBuilder{ 2654 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 2655 RawDescriptor: file_targeting_proto_rawDesc, 2656 NumEnums: 4, 2657 NumMessages: 27, 2658 NumExtensions: 0, 2659 NumServices: 0, 2660 }, 2661 GoTypes: file_targeting_proto_goTypes, 2662 DependencyIndexes: file_targeting_proto_depIdxs, 2663 EnumInfos: file_targeting_proto_enumTypes, 2664 MessageInfos: file_targeting_proto_msgTypes, 2665 }.Build() 2666 File_targeting_proto = out.File 2667 file_targeting_proto_rawDesc = nil 2668 file_targeting_proto_goTypes = nil 2669 file_targeting_proto_depIdxs = nil 2670} 2671