github.com/cloudwego/dynamicgo@v0.2.6-0.20240519101509-707f41b6b834/proto/README.md (about) 1 <!-- Code generated by gomarkdoc. DO NOT EDIT --> 2 3 # proto 4 5 ```go 6 import "github.com/cloudwego/dynamicgo/proto" 7 ``` 8 9 ## Index 10 11 - [proto](#proto) 12 - [Index](#index) 13 - [Variables](#variables) 14 - [type EnumNumber](#type-enumnumber) 15 - [type FieldDescriptor](#type-fielddescriptor) 16 - [func (\*FieldDescriptor) IsList](#func-fielddescriptor-islist) 17 - [func (\*FieldDescriptor) IsMap](#func-fielddescriptor-ismap) 18 - [func (\*FieldDescriptor) JSONName](#func-fielddescriptor-jsonname) 19 - [func (\*FieldDescriptor) Kind](#func-fielddescriptor-kind) 20 - [func (\*FieldDescriptor) MapKey](#func-fielddescriptor-mapkey) 21 - [func (\*FieldDescriptor) MapValue](#func-fielddescriptor-mapvalue) 22 - [func (\*FieldDescriptor) Message](#func-fielddescriptor-message) 23 - [func (\*FieldDescriptor) Name](#func-fielddescriptor-name) 24 - [func (\*FieldDescriptor) Number](#func-fielddescriptor-number) 25 - [func (\*FieldDescriptor) Type](#func-fielddescriptor-type) 26 - [type FieldNameMap](#type-fieldnamemap) 27 - [func (FieldNameMap) All](#func-fieldnamemap-all) 28 - [func (\*FieldNameMap) Build](#func-fieldnamemap-build) 29 - [func (FieldNameMap) Get](#func-fieldnamemap-get) 30 - [func (\*FieldNameMap) Set](#func-fieldnamemap-set) 31 - [func (FieldNameMap) Size](#func-fieldnamemap-size) 32 - [type FieldNumber](#type-fieldnumber) 33 - [type FieldNumberMap](#type-fieldnumbermap) 34 - [func (FieldNumberMap) All](#func-fieldnumbermap-all) 35 - [func (FieldNumberMap) Get](#func-fieldnumbermap-get) 36 - [func (\*FieldNumberMap) Set](#func-fieldnumbermap-set) 37 - [func (FieldNumberMap) Size](#func-fieldnumbermap-size) 38 - [type MessageDescriptor](#type-messagedescriptor) 39 - [func (\*MessageDescriptor) ByJSONName](#func-messagedescriptor-byjsonname) 40 - [func (\*MessageDescriptor) ByName](#func-messagedescriptor-byname) 41 - [func (\*MessageDescriptor) ByNumber](#func-messagedescriptor-bynumber) 42 - [func (\*MessageDescriptor) FieldsCount](#func-messagedescriptor-fieldscount) 43 - [func (\*MessageDescriptor) Name](#func-messagedescriptor-name) 44 - [type MethodDescriptor](#type-methoddescriptor) 45 - [func GetFnDescFromFile](#func-getfndescfromfile) 46 - [func (\*MethodDescriptor) Input](#func-methoddescriptor-input) 47 - [func (\*MethodDescriptor) Name](#func-methoddescriptor-name) 48 - [func (\*MethodDescriptor) Output](#func-methoddescriptor-output) 49 - [type Number](#type-number) 50 - [type Options](#type-options) 51 - [func NewDefaultOptions](#func-newdefaultoptions) 52 - [func (Options) NewDesccriptorFromContent](#func-options-newdesccriptorfromcontent) 53 - [func (Options) NewDescriptorFromPath](#func-options-newdescriptorfrompath) 54 - [type ParseTarget](#type-parsetarget) 55 - [type ProtoKind](#type-protokind) 56 - [type ServiceDescriptor](#type-servicedescriptor) 57 - [func NewDescritorFromContent](#func-newdescritorfromcontent) 58 - [func NewDescritorFromPath](#func-newdescritorfrompath) 59 - [func (\*ServiceDescriptor) LookupMethodByName](#func-servicedescriptor-lookupmethodbyname) 60 - [func (\*ServiceDescriptor) Methods](#func-servicedescriptor-methods) 61 - [func (\*ServiceDescriptor) Name](#func-servicedescriptor-name) 62 - [type Type](#type-type) 63 - [func FromProtoKindToType](#func-fromprotokindtotype) 64 - [func (Type) IsComplex](#func-type-iscomplex) 65 - [func (Type) IsInt](#func-type-isint) 66 - [func (Type) IsPacked](#func-type-ispacked) 67 - [func (Type) IsUint](#func-type-isuint) 68 - [func (Type) NeedVarint](#func-type-needvarint) 69 - [func (Type) String](#func-type-string) 70 - [func (Type) TypeToKind](#func-type-typetokind) 71 - [func (Type) Valid](#func-type-valid) 72 - [type TypeDescriptor](#type-typedescriptor) 73 - [func FnRequest](#func-fnrequest) 74 - [func FnResponse](#func-fnresponse) 75 - [func (\*TypeDescriptor) BaseId](#func-typedescriptor-baseid) 76 - [func (\*TypeDescriptor) Elem](#func-typedescriptor-elem) 77 - [func (\*TypeDescriptor) IsList](#func-typedescriptor-islist) 78 - [func (\*TypeDescriptor) IsMap](#func-typedescriptor-ismap) 79 - [func (\*TypeDescriptor) IsPacked](#func-typedescriptor-ispacked) 80 - [func (\*TypeDescriptor) Key](#func-typedescriptor-key) 81 - [func (\*TypeDescriptor) Message](#func-typedescriptor-message) 82 - [func (\*TypeDescriptor) Name](#func-typedescriptor-name) 83 - [func (\*TypeDescriptor) Type](#func-typedescriptor-type) 84 - [func (\*TypeDescriptor) WireType](#func-typedescriptor-wiretype) 85 - [type WireType](#type-wiretype) 86 - [func (WireType) String](#func-wiretype-string) 87 88 89 ## Variables 90 91 <a name="Kind2Wire"></a>map from proto.ProtoKind to proto.WireType 92 93 ```go 94 var Kind2Wire = map[ProtoKind]WireType{ 95 BoolKind: VarintType, 96 EnumKind: VarintType, 97 Int32Kind: VarintType, 98 Sint32Kind: VarintType, 99 Uint32Kind: VarintType, 100 Int64Kind: VarintType, 101 Sint64Kind: VarintType, 102 Uint64Kind: VarintType, 103 Sfixed32Kind: Fixed32Type, 104 Fixed32Kind: Fixed32Type, 105 FloatKind: Fixed32Type, 106 Sfixed64Kind: Fixed64Type, 107 Fixed64Kind: Fixed64Type, 108 DoubleKind: Fixed64Type, 109 StringKind: BytesType, 110 BytesKind: BytesType, 111 MessageKind: BytesType, 112 GroupKind: StartGroupType, 113 } 114 ``` 115 116 <a name="EnumNumber"></a> 117 ## type [EnumNumber](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L225>) 118 119 120 121 ```go 122 type EnumNumber int32 123 ``` 124 125 <a name="FieldDescriptor"></a> 126 ## type [FieldDescriptor](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L56-L62>) 127 128 129 130 ```go 131 type FieldDescriptor struct { 132 // contains filtered or unexported fields 133 } 134 ``` 135 136 <a name="FieldDescriptor.IsList"></a> 137 ### func (*FieldDescriptor) [IsList](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L109>) 138 139 ```go 140 func (f *FieldDescriptor) IsList() bool 141 ``` 142 143 144 145 <a name="FieldDescriptor.IsMap"></a> 146 ### func (*FieldDescriptor) [IsMap](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L105>) 147 148 ```go 149 func (f *FieldDescriptor) IsMap() bool 150 ``` 151 152 153 154 <a name="FieldDescriptor.JSONName"></a> 155 ### func (*FieldDescriptor) [JSONName](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L76>) 156 157 ```go 158 func (f *FieldDescriptor) JSONName() string 159 ``` 160 161 162 163 <a name="FieldDescriptor.Kind"></a> 164 ### func (*FieldDescriptor) [Kind](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L68>) 165 166 ```go 167 func (f *FieldDescriptor) Kind() ProtoKind 168 ``` 169 170 171 172 <a name="FieldDescriptor.MapKey"></a> 173 ### func (*FieldDescriptor) [MapKey](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L91>) 174 175 ```go 176 func (f *FieldDescriptor) MapKey() *TypeDescriptor 177 ``` 178 179 180 181 <a name="FieldDescriptor.MapValue"></a> 182 ### func (*FieldDescriptor) [MapValue](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L98>) 183 184 ```go 185 func (f *FieldDescriptor) MapValue() *TypeDescriptor 186 ``` 187 188 189 190 <a name="FieldDescriptor.Message"></a> 191 ### func (*FieldDescriptor) [Message](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L87>) 192 193 ```go 194 func (f *FieldDescriptor) Message() *MessageDescriptor 195 ``` 196 197 when List+Message it can get message element descriptor when Map it can get map key-value entry massage descriptor when Message it can get sub message descriptor 198 199 <a name="FieldDescriptor.Name"></a> 200 ### func (*FieldDescriptor) [Name](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L72>) 201 202 ```go 203 func (f *FieldDescriptor) Name() string 204 ``` 205 206 207 208 <a name="FieldDescriptor.Number"></a> 209 ### func (*FieldDescriptor) [Number](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L64>) 210 211 ```go 212 func (f *FieldDescriptor) Number() FieldNumber 213 ``` 214 215 216 217 <a name="FieldDescriptor.Type"></a> 218 ### func (*FieldDescriptor) [Type](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L80>) 219 220 ```go 221 func (f *FieldDescriptor) Type() *TypeDescriptor 222 ``` 223 224 225 226 <a name="FieldNameMap"></a> 227 ## type [FieldNameMap](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L18-L23>) 228 229 FieldNameMap is a map for field name and field descriptor 230 231 ```go 232 type FieldNameMap struct { 233 // contains filtered or unexported fields 234 } 235 ``` 236 237 <a name="FieldNameMap.All"></a> 238 ### func (FieldNameMap) [All](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L52>) 239 240 ```go 241 func (ft FieldNameMap) All() []*FieldDescriptor 242 ``` 243 244 All returns all field descriptors 245 246 <a name="FieldNameMap.Build"></a> 247 ### func (*FieldNameMap) [Build](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L67>) 248 249 ```go 250 func (ft *FieldNameMap) Build() 251 ``` 252 253 Build builds the map. It will try to build a trie tree if the dispersion of keys is higher enough (min). 254 255 <a name="FieldNameMap.Get"></a> 256 ### func (FieldNameMap) [Get](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L42>) 257 258 ```go 259 func (ft FieldNameMap) Get(k string) *FieldDescriptor 260 ``` 261 262 Get gets the field descriptor for the given key 263 264 <a name="FieldNameMap.Set"></a> 265 ### func (*FieldNameMap) [Set](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L26>) 266 267 ```go 268 func (ft *FieldNameMap) Set(key string, field *FieldDescriptor) (exist bool) 269 ``` 270 271 Set sets the field descriptor for the given key 272 273 <a name="FieldNameMap.Size"></a> 274 ### func (FieldNameMap) [Size](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L57>) 275 276 ```go 277 func (ft FieldNameMap) Size() int 278 ``` 279 280 Size returns the size of the map 281 282 <a name="FieldNumber"></a> 283 ## type [FieldNumber](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L224>) 284 285 286 287 ```go 288 type FieldNumber int32 289 ``` 290 291 <a name="MinValidNumber"></a>reserved field number min-max ranges in a proto message 292 293 ```go 294 const ( 295 MinValidNumber FieldNumber = 1 296 FirstReservedNumber FieldNumber = 19000 297 LastReservedNumber FieldNumber = 19999 298 MaxValidNumber FieldNumber = 1<<29 - 1 299 DefaultRecursionLimit = 10000 300 ) 301 ``` 302 303 <a name="FieldNumberMap"></a> 304 ## type [FieldNumberMap](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L149-L152>) 305 306 FieldIDMap is a map from field id to field descriptor 307 308 ```go 309 type FieldNumberMap struct { 310 // contains filtered or unexported fields 311 } 312 ``` 313 314 <a name="FieldNumberMap.All"></a> 315 ### func (FieldNumberMap) [All](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L155>) 316 317 ```go 318 func (fd FieldNumberMap) All() (ret []*FieldDescriptor) 319 ``` 320 321 All returns all field descriptors 322 323 <a name="FieldNumberMap.Get"></a> 324 ### func (FieldNumberMap) [Get](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L165>) 325 326 ```go 327 func (fd FieldNumberMap) Get(id FieldNumber) *FieldDescriptor 328 ``` 329 330 Get gets the field descriptor for the given id 331 332 <a name="FieldNumberMap.Set"></a> 333 ### func (*FieldNumberMap) [Set](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L173>) 334 335 ```go 336 func (fd *FieldNumberMap) Set(id FieldNumber, f *FieldDescriptor) 337 ``` 338 339 Set sets the field descriptor for the given id 340 341 <a name="FieldNumberMap.Size"></a> 342 ### func (FieldNumberMap) [Size](<https://github.com/khan-yin/dynamicgo/blob/main/proto/utils.go#L160>) 343 344 ```go 345 func (fd FieldNumberMap) Size() int 346 ``` 347 348 Size returns the size of the map 349 350 <a name="MessageDescriptor"></a> 351 ## type [MessageDescriptor](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L113-L121>) 352 353 354 355 ```go 356 type MessageDescriptor struct { 357 // contains filtered or unexported fields 358 } 359 ``` 360 361 <a name="MessageDescriptor.ByJSONName"></a> 362 ### func (*MessageDescriptor) [ByJSONName](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L127>) 363 364 ```go 365 func (m *MessageDescriptor) ByJSONName(name string) *FieldDescriptor 366 ``` 367 368 369 370 <a name="MessageDescriptor.ByName"></a> 371 ### func (*MessageDescriptor) [ByName](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L131>) 372 373 ```go 374 func (m *MessageDescriptor) ByName(name string) *FieldDescriptor 375 ``` 376 377 378 379 <a name="MessageDescriptor.ByNumber"></a> 380 ### func (*MessageDescriptor) [ByNumber](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L135>) 381 382 ```go 383 func (m *MessageDescriptor) ByNumber(id FieldNumber) *FieldDescriptor 384 ``` 385 386 387 388 <a name="MessageDescriptor.FieldsCount"></a> 389 ### func (*MessageDescriptor) [FieldsCount](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L139>) 390 391 ```go 392 func (m *MessageDescriptor) FieldsCount() int 393 ``` 394 395 396 397 <a name="MessageDescriptor.Name"></a> 398 ### func (*MessageDescriptor) [Name](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L123>) 399 400 ```go 401 func (m *MessageDescriptor) Name() string 402 ``` 403 404 405 406 <a name="MethodDescriptor"></a> 407 ## type [MethodDescriptor](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L143-L147>) 408 409 410 411 ```go 412 type MethodDescriptor struct { 413 // contains filtered or unexported fields 414 } 415 ``` 416 417 <a name="GetFnDescFromFile"></a> 418 ### func [GetFnDescFromFile](<https://github.com/khan-yin/dynamicgo/blob/main/proto/test_util.go#L12>) 419 420 ```go 421 func GetFnDescFromFile(filePath, fnName string, opts Options, includeDirs ...string) *MethodDescriptor 422 ``` 423 424 GetFnDescFromFile get a fucntion descriptor from idl path (relative to your git root) and the function name 425 426 <a name="MethodDescriptor.Input"></a> 427 ### func (*MethodDescriptor) [Input](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L153>) 428 429 ```go 430 func (m *MethodDescriptor) Input() *TypeDescriptor 431 ``` 432 433 434 435 <a name="MethodDescriptor.Name"></a> 436 ### func (*MethodDescriptor) [Name](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L149>) 437 438 ```go 439 func (m *MethodDescriptor) Name() string 440 ``` 441 442 443 444 <a name="MethodDescriptor.Output"></a> 445 ### func (*MethodDescriptor) [Output](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L157>) 446 447 ```go 448 func (m *MethodDescriptor) Output() *TypeDescriptor 449 ``` 450 451 452 453 <a name="Number"></a> 454 ## type [Number](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L222>) 455 456 define Number = protowire.Number (int32) 457 458 ```go 459 type Number = protowire.Number 460 ``` 461 462 <a name="Options"></a> 463 ## type [Options](<https://github.com/khan-yin/dynamicgo/blob/main/proto/idl.go#L31-L48>) 464 465 Options is options for parsing thrift IDL. 466 467 ```go 468 type Options struct { 469 // ParseServiceMode indicates how to parse service. 470 ParseServiceMode meta.ParseServiceMode 471 472 MapFieldWay meta.MapFieldWay // not implemented. 473 474 ParseFieldRandomRate float64 // not implemented. 475 476 ParseEnumAsInt64 bool // not implemented. 477 478 SetOptionalBitmap bool // not implemented. 479 480 UseDefaultValue bool // not implemented. 481 482 ParseFunctionMode meta.ParseFunctionMode // not implemented. 483 484 EnableProtoBase bool // not implemented. 485 } 486 ``` 487 488 <a name="NewDefaultOptions"></a> 489 ### func [NewDefaultOptions](<https://github.com/khan-yin/dynamicgo/blob/main/proto/idl.go#L51>) 490 491 ```go 492 func NewDefaultOptions() Options 493 ``` 494 495 NewDefaultOptions creates a default Options. 496 497 <a name="Options.NewDesccriptorFromContent"></a> 498 ### func (Options) [NewDesccriptorFromContent](<https://github.com/khan-yin/dynamicgo/blob/main/proto/idl.go#L85>) 499 500 ```go 501 func (opts Options) NewDesccriptorFromContent(ctx context.Context, path, content string, includes map[string]string, importDirs ...string) (*ServiceDescriptor, error) 502 ``` 503 504 505 506 <a name="Options.NewDescriptorFromPath"></a> 507 ### func (Options) [NewDescriptorFromPath](<https://github.com/khan-yin/dynamicgo/blob/main/proto/idl.go#L62>) 508 509 ```go 510 func (opts Options) NewDescriptorFromPath(ctx context.Context, path string, importDirs ...string) (*ServiceDescriptor, error) 511 ``` 512 513 NewDescritorFromContent creates a ServiceDescriptor from a proto path and its imports, which uses the given options. The importDirs is used to find the include files. 514 515 <a name="ParseTarget"></a> 516 ## type [ParseTarget](<https://github.com/khan-yin/dynamicgo/blob/main/proto/idl.go#L28>) 517 518 ParseTarget indicates the target to parse 519 520 ```go 521 type ParseTarget uint8 522 ``` 523 524 <a name="Request"></a> 525 526 ```go 527 const ( 528 Request ParseTarget = iota 529 Response 530 Exception 531 ) 532 ``` 533 534 <a name="ProtoKind"></a> 535 ## type [ProtoKind](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L41>) 536 537 define ProtoKind = protoreflect.Kind (int8) 538 539 ```go 540 type ProtoKind = protoreflect.Kind 541 ``` 542 543 <a name="DoubleKind"></a> 544 545 ```go 546 const ( 547 DoubleKind ProtoKind = iota + 1 548 FloatKind 549 Int64Kind 550 Uint64Kind 551 Int32Kind 552 Fixed64Kind 553 Fixed32Kind 554 BoolKind 555 StringKind 556 GroupKind 557 MessageKind 558 BytesKind 559 Uint32Kind 560 EnumKind 561 Sfixed32Kind 562 Sfixed64Kind 563 Sint32Kind 564 Sint64Kind 565 ) 566 ``` 567 568 <a name="ServiceDescriptor"></a> 569 ## type [ServiceDescriptor](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L161-L164>) 570 571 572 573 ```go 574 type ServiceDescriptor struct { 575 // contains filtered or unexported fields 576 } 577 ``` 578 579 <a name="NewDescritorFromContent"></a> 580 ### func [NewDescritorFromContent](<https://github.com/khan-yin/dynamicgo/blob/main/proto/idl.go#L81>) 581 582 ```go 583 func NewDescritorFromContent(ctx context.Context, path, content string, includes map[string]string, importDirs ...string) (*ServiceDescriptor, error) 584 ``` 585 586 NewDescritorFromContent behaviors like NewDescritorFromPath, besides it uses DefaultOptions. 587 588 <a name="NewDescritorFromPath"></a> 589 ### func [NewDescritorFromPath](<https://github.com/khan-yin/dynamicgo/blob/main/proto/idl.go#L56>) 590 591 ```go 592 func NewDescritorFromPath(ctx context.Context, path string, importDirs ...string) (*ServiceDescriptor, error) 593 ``` 594 595 NewDescritorFromPath behaviors like NewDescritorFromPath, besides it uses DefaultOptions. 596 597 <a name="ServiceDescriptor.LookupMethodByName"></a> 598 ### func (*ServiceDescriptor) [LookupMethodByName](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L174>) 599 600 ```go 601 func (s *ServiceDescriptor) LookupMethodByName(name string) *MethodDescriptor 602 ``` 603 604 605 606 <a name="ServiceDescriptor.Methods"></a> 607 ### func (*ServiceDescriptor) [Methods](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L170>) 608 609 ```go 610 func (s *ServiceDescriptor) Methods() map[string]*MethodDescriptor 611 ``` 612 613 614 615 <a name="ServiceDescriptor.Name"></a> 616 ### func (*ServiceDescriptor) [Name](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L166>) 617 618 ```go 619 func (s *ServiceDescriptor) Name() string 620 ``` 621 622 623 624 <a name="Type"></a> 625 ## type [Type](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L87>) 626 627 Node type (uint8) mapping ProtoKind the same value, except for UNKNOWN, LIST, MAP, ERROR 628 629 ```go 630 type Type uint8 631 ``` 632 633 <a name="UNKNOWN"></a> 634 635 ```go 636 const ( 637 UNKNOWN Type = 0 // unknown field type 638 DOUBLE Type = 1 639 FLOAT Type = 2 640 INT64 Type = 3 641 UINT64 Type = 4 642 INT32 Type = 5 643 FIX64 Type = 6 644 FIX32 Type = 7 645 BOOL Type = 8 646 STRING Type = 9 647 GROUP Type = 10 // deprecated 648 MESSAGE Type = 11 649 BYTE Type = 12 650 UINT32 Type = 13 651 ENUM Type = 14 652 SFIX32 Type = 15 653 SFIX64 Type = 16 654 SINT32 Type = 17 655 SINT64 Type = 18 656 LIST Type = 19 657 MAP Type = 20 658 ERROR Type = 255 659 ) 660 ``` 661 662 <a name="FromProtoKindToType"></a> 663 ### func [FromProtoKindToType](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L137>) 664 665 ```go 666 func FromProtoKindToType(kind ProtoKind, isList bool, isMap bool) Type 667 ``` 668 669 FromProtoKindTType converts ProtoKind to Type 670 671 <a name="Type.IsComplex"></a> 672 ### func (Type) [IsComplex](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L169>) 673 674 ```go 675 func (p Type) IsComplex() bool 676 ``` 677 678 IsComplex tells if the type is one of STRUCT, MAP, SET, LIST 679 680 <a name="Type.IsInt"></a> 681 ### func (Type) [IsInt](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L160>) 682 683 ```go 684 func (p Type) IsInt() bool 685 ``` 686 687 IsInt containing isUint 688 689 <a name="Type.IsPacked"></a> 690 ### func (Type) [IsPacked](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L152>) 691 692 ```go 693 func (p Type) IsPacked() bool 694 ``` 695 696 697 698 <a name="Type.IsUint"></a> 699 ### func (Type) [IsUint](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L164>) 700 701 ```go 702 func (p Type) IsUint() bool 703 ``` 704 705 706 707 <a name="Type.NeedVarint"></a> 708 ### func (Type) [NeedVarint](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L148>) 709 710 ```go 711 func (p Type) NeedVarint() bool 712 ``` 713 714 check if the type need Varint encoding 715 716 <a name="Type.String"></a> 717 ### func (Type) [String](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L174>) 718 719 ```go 720 func (p Type) String() string 721 ``` 722 723 String for format and print 724 725 <a name="Type.TypeToKind"></a> 726 ### func (Type) [TypeToKind](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L124>) 727 728 ```go 729 func (p Type) TypeToKind() ProtoKind 730 ``` 731 732 733 734 <a name="Type.Valid"></a> 735 ### func (Type) [Valid](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L114>) 736 737 ```go 738 func (p Type) Valid() bool 739 ``` 740 741 742 743 <a name="TypeDescriptor"></a> 744 ## type [TypeDescriptor](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L3-L10>) 745 746 747 748 ```go 749 type TypeDescriptor struct { 750 // contains filtered or unexported fields 751 } 752 ``` 753 754 <a name="FnRequest"></a> 755 ### func [FnRequest](<https://github.com/khan-yin/dynamicgo/blob/main/proto/test_util.go#L25>) 756 757 ```go 758 func FnRequest(fn *MethodDescriptor) *TypeDescriptor 759 ``` 760 761 FnRequest get the normal requestDescriptor 762 763 <a name="FnResponse"></a> 764 ### func [FnResponse](<https://github.com/khan-yin/dynamicgo/blob/main/proto/test_util.go#L34>) 765 766 ```go 767 func FnResponse(fn *MethodDescriptor) *TypeDescriptor 768 ``` 769 770 FnResponse get hte normal responseDescriptor 771 772 <a name="TypeDescriptor.BaseId"></a> 773 ### func (*TypeDescriptor) [BaseId](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L28>) 774 775 ```go 776 func (t *TypeDescriptor) BaseId() FieldNumber 777 ``` 778 779 780 781 <a name="TypeDescriptor.Elem"></a> 782 ### func (*TypeDescriptor) [Elem](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L20>) 783 784 ```go 785 func (t *TypeDescriptor) Elem() *TypeDescriptor 786 ``` 787 788 789 790 <a name="TypeDescriptor.IsList"></a> 791 ### func (*TypeDescriptor) [IsList](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L43>) 792 793 ```go 794 func (f *TypeDescriptor) IsList() bool 795 ``` 796 797 798 799 <a name="TypeDescriptor.IsMap"></a> 800 ### func (*TypeDescriptor) [IsMap](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L39>) 801 802 ```go 803 func (f *TypeDescriptor) IsMap() bool 804 ``` 805 806 807 808 <a name="TypeDescriptor.IsPacked"></a> 809 ### func (*TypeDescriptor) [IsPacked](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L32>) 810 811 ```go 812 func (t *TypeDescriptor) IsPacked() bool 813 ``` 814 815 816 817 <a name="TypeDescriptor.Key"></a> 818 ### func (*TypeDescriptor) [Key](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L16>) 819 820 ```go 821 func (t *TypeDescriptor) Key() *TypeDescriptor 822 ``` 823 824 825 826 <a name="TypeDescriptor.Message"></a> 827 ### func (*TypeDescriptor) [Message](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L24>) 828 829 ```go 830 func (t *TypeDescriptor) Message() *MessageDescriptor 831 ``` 832 833 834 835 <a name="TypeDescriptor.Name"></a> 836 ### func (*TypeDescriptor) [Name](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L52>) 837 838 ```go 839 func (f *TypeDescriptor) Name() string 840 ``` 841 842 843 844 <a name="TypeDescriptor.Type"></a> 845 ### func (*TypeDescriptor) [Type](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L12>) 846 847 ```go 848 func (t *TypeDescriptor) Type() Type 849 ``` 850 851 852 853 <a name="TypeDescriptor.WireType"></a> 854 ### func (*TypeDescriptor) [WireType](<https://github.com/khan-yin/dynamicgo/blob/main/proto/descriptor.go#L47>) 855 856 ```go 857 func (f *TypeDescriptor) WireType() WireType 858 ``` 859 860 861 862 <a name="WireType"></a> 863 ## type [WireType](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L10>) 864 865 protobuf encoding wire type 866 867 ```go 868 type WireType int8 869 ``` 870 871 <a name="VarintType"></a> 872 873 ```go 874 const ( 875 VarintType WireType = 0 876 Fixed32Type WireType = 5 877 Fixed64Type WireType = 1 878 BytesType WireType = 2 879 StartGroupType WireType = 3 // deprecated 880 EndGroupType WireType = 4 // deprecated 881 ) 882 ``` 883 884 <a name="WireType.String"></a> 885 ### func (WireType) [String](<https://github.com/khan-yin/dynamicgo/blob/main/proto/type.go#L21>) 886 887 ```go 888 func (p WireType) String() string 889 ``` 890 891 892 893 Generated by [gomarkdoc](<https://github.com/princjef/gomarkdoc>)