Home | History | Annotate | Download | only in generator

Lines Matching defs:Descriptor

57 	"github.com/golang/protobuf/protoc-gen-go/descriptor"
99 file *descriptor.FileDescriptorProto // File this object comes from.
105 func (c *common) File() *descriptor.FileDescriptorProto { return c.file }
107 func fileIsProto3(file *descriptor.FileDescriptorProto) bool {
113 // Descriptor represents a protocol buffer message.
114 type Descriptor struct {
116 *descriptor.DescriptorProto
117 parent *Descriptor // The containing message, if any.
118 nested []*Descriptor // Inner messages, if any.
129 func (d *Descriptor) TypeName() []string {
147 // Otherwise it will be the descriptor of the message in which it is defined.
150 *descriptor.EnumDescriptorProto
151 parent *Descriptor // The containing message, if any.
199 // Otherwise it will be the descriptor of the message in which it is defined.
202 *descriptor.FieldDescriptorProto
203 parent *Descriptor // The containing message, if any.
222 // DescName returns the variable name used for the generated descriptor.
241 // FileDescriptor describes an protocol buffer descriptor file (.proto).
245 *descriptor.FileDescriptorProto
246 desc []*Descriptor // All the messages defined in this file.
252 comments map[string]*descriptor.SourceCodeInfo_Location
268 // to the compressed bytes of this descriptor. It is not exported, so
536 File() *descriptor.FileDescriptorProto
543 func uniquePackageOf(fd *descriptor.FileDescriptorProto) string {
657 var uniquePackageName = make(map[*descriptor.FileDescriptorProto]string)
663 // Create and remember a guaranteed unique package name for this file descriptor.
665 // has no file descriptor.
845 func (g *Generator) buildNestedDescriptors(descs []*Descriptor) {
860 func (g *Generator) buildNestedEnums(descs []*Descriptor, enums []*EnumDescriptor) {
875 // Construct the Descriptor
876 func newDescriptor(desc *descriptor.DescriptorProto, parent *Descriptor, file *descriptor.FileDescriptorProto, index int) *Descriptor {
877 d := &Descriptor{
898 if field.GetType() == descriptor.FieldDescriptorProto_TYPE_GROUP && field.GetTypeName() == exp {
913 func wrapDescriptors(file *descriptor.FileDescriptorProto) []*Descriptor {
914 sl := make([]*Descriptor, 0, len(file.MessageType)+10)
921 // Wrap this Descriptor, recursively
922 func wrapThisDescriptor(sl []*Descriptor, desc *descriptor.DescriptorProto, parent *Descriptor, file *descriptor.FileDescriptorProto, index int) []*Descriptor {
932 func newEnumDescriptor(desc *descriptor.EnumDescriptorProto, parent *Descriptor, file *descriptor.FileDescriptorProto, index int) *EnumDescriptor {
948 func wrapEnumDescriptors(file *descriptor.FileDescriptorProto, descs []*Descriptor) []*EnumDescriptor {
964 func wrapExtensions(file *descriptor.FileDescriptorProto) []*ExtensionDescriptor {
973 func wrapImported(file *descriptor.FileDescriptorProto, g *Generator) (sl []*ImportedDescriptor) {
993 file.comments = make(map[string]*descriptor.SourceCodeInfo_Location)
1031 // returns the descriptor for the message or enum with that name.
1158 func (g *Generator) FileOf(fd *descriptor.FileDescriptorProto) *FileDescriptor {
1288 // See descriptor.proto for its format.
1492 func (g *Generator) goTag(message *Descriptor, field *descriptor.FieldDescriptorProto, wiretype string) string {
1507 case descriptor.FieldDescriptorProto_TYPE_BOOL:
1513 case descriptor.FieldDescriptorProto_TYPE_STRING,
1514 descriptor.FieldDescriptorProto_TYPE_BYTES:
1516 case descriptor.FieldDescriptorProto_TYPE_ENUM:
1537 descriptor.FieldDescriptorProto_TYPE_ENUM {
1560 if *field.Type == descriptor.FieldDescriptorProto_TYPE_GROUP {
1579 if *field.Type == descriptor.FieldDescriptorProto_TYPE_BYTES {
1599 func needsStar(typ descriptor.FieldDescriptorProto_Type) bool {
1601 case descriptor.FieldDescriptorProto_TYPE_GROUP:
1603 case descriptor.FieldDescriptorProto_TYPE_MESSAGE:
1605 case descriptor.FieldDescriptorProto_TYPE_BYTES:
1627 func (g *Generator) GoType(message *Descriptor, field *descriptor.FieldDescriptorProto) (typ string, wire string) {
1630 case descriptor.FieldDescriptorProto_TYPE_DOUBLE:
1632 case descriptor.FieldDescriptorProto_TYPE_FLOAT:
1634 case descriptor.FieldDescriptorProto_TYPE_INT64:
1636 case descriptor.FieldDescriptorProto_TYPE_UINT64:
1638 case descriptor.FieldDescriptorProto_TYPE_INT32:
1640 case descriptor.FieldDescriptorProto_TYPE_UINT32:
1642 case descriptor.FieldDescriptorProto_TYPE_FIXED64:
1644 case descriptor.FieldDescriptorProto_TYPE_FIXED32:
1646 case descriptor.FieldDescriptorProto_TYPE_BOOL:
1648 case descriptor.FieldDescriptorProto_TYPE_STRING:
1650 case descriptor.FieldDescriptorProto_TYPE_GROUP:
1653 case descriptor.FieldDescriptorProto_TYPE_MESSAGE:
1656 case descriptor.FieldDescriptorProto_TYPE_BYTES:
1658 case descriptor.FieldDescriptorProto_TYPE_ENUM:
1661 case descriptor.FieldDescriptorProto_TYPE_SFIXED32:
1663 case descriptor.FieldDescriptorProto_TYPE_SFIXED64:
1665 case descriptor.FieldDescriptorProto_TYPE_SINT32:
1667 case descriptor.FieldDescriptorProto_TYPE_SINT64:
1703 "Descriptor",
1728 // Generate the type and default constant definitions for this Descriptor.
1729 func (g *Generator) generateMessage(message *Descriptor) {
1739 fieldNames := make(map[*descriptor.FieldDescriptorProto]string)
1740 fieldGetterNames := make(map[*descriptor.FieldDescriptorProto]string)
1741 fieldTypes := make(map[*descriptor.FieldDescriptorProto]string)
1742 mapFieldTypes := make(map[*descriptor.FieldDescriptorProto]string)
1746 oneofTypeName := make(map[*descriptor.FieldDescriptorProto]string) // without star
1813 if *field.Type == descriptor.FieldDescriptorProto_TYPE_MESSAGE {
1815 if d, ok := desc.(*Descriptor); ok && d.GetOptions().GetMapEntry() {
1827 case descriptor.FieldDescriptorProto_TYPE_ENUM:
1830 case descriptor.FieldDescriptorProto_TYPE_MESSAGE:
1912 g.P("func (*", ccTypeName, ") Descriptor() ([]byte, []int) { return ", g.file.VarName(), ", []int{", strings.Join(indexes, ", "), "} }")
1969 defNames := make(map[*descriptor.FieldDescriptorProto]string)
1999 if *field.Type == descriptor.FieldDescriptorProto_TYPE_FLOAT {
2003 case *field.Type == descriptor.FieldDescriptorProto_TYPE_ENUM:
2090 case descriptor.FieldDescriptorProto_TYPE_GROUP:
2092 case descriptor.FieldDescriptorProto_TYPE_MESSAGE, descriptor.FieldDescriptorProto_TYPE_ENUM:
2113 case descriptor.FieldDescriptorProto_TYPE_BYTES:
2115 case descriptor.FieldDescriptorProto_TYPE_GROUP, descriptor.FieldDescriptorProto_TYPE_MESSAGE:
2153 if *field.Type != descriptor.FieldDescriptorProto_TYPE_BYTES {
2162 case descriptor.FieldDescriptorProto_TYPE_BOOL:
2164 case descriptor.FieldDescriptorProto_TYPE_STRING:
2166 case descriptor.FieldDescriptorProto_TYPE_GROUP,
2167 descriptor.FieldDescriptorProto_TYPE_MESSAGE,
2168 descriptor.FieldDescriptorProto_TYPE_BYTES:
2171 case descriptor.FieldDescriptorProto_TYPE_ENUM:
2214 fieldWire := make(map[*descriptor.FieldDescriptorProto]string)
2253 case descriptor.FieldDescriptorProto_TYPE_DOUBLE:
2257 case descriptor.FieldDescriptorProto_TYPE_FLOAT:
2261 case descriptor.FieldDescriptorProto_TYPE_INT64,
2262 descriptor.FieldDescriptorProto_TYPE_UINT64:
2265 case descriptor.FieldDescriptorProto_TYPE_INT32,
2266 descriptor.FieldDescriptorProto_TYPE_UINT32,
2267 descriptor.FieldDescriptorProto_TYPE_ENUM:
2270 case descriptor.FieldDescriptorProto_TYPE_FIXED64,
2271 descriptor.FieldDescriptorProto_TYPE_SFIXED64:
2274 case descriptor.FieldDescriptorProto_TYPE_FIXED32,
2275 descriptor.FieldDescriptorProto_TYPE_SFIXED32:
2278 case descriptor.FieldDescriptorProto_TYPE_BOOL:
2285 case descriptor.FieldDescriptorProto_TYPE_STRING:
2288 case descriptor.FieldDescriptorProto_TYPE_GROUP:
2292 case descriptor.FieldDescriptorProto_TYPE_MESSAGE:
2296 case descriptor.FieldDescriptorProto_TYPE_BYTES:
2299 case descriptor.FieldDescriptorProto_TYPE_SINT32:
2302 case descriptor.FieldDescriptorProto_TYPE_SINT64:
2317 if *field.Type == descriptor.FieldDescriptorProto_TYPE_GROUP {
2345 case descriptor.FieldDescriptorProto_TYPE_DOUBLE:
2347 case descriptor.FieldDescriptorProto_TYPE_FLOAT:
2349 case descriptor.FieldDescriptorProto_TYPE_INT64:
2351 case descriptor.FieldDescriptorProto_TYPE_UINT64:
2353 case descriptor.FieldDescriptorProto_TYPE_INT32:
2355 case descriptor.FieldDescriptorProto_TYPE_FIXED64:
2357 case descriptor.FieldDescriptorProto_TYPE_FIXED32:
2359 case descriptor.FieldDescriptorProto_TYPE_BOOL:
2362 case descriptor.FieldDescriptorProto_TYPE_STRING:
2364 case descriptor.FieldDescriptorProto_TYPE_GROUP:
2369 case descriptor.FieldDescriptorProto_TYPE_MESSAGE:
2374 case descriptor.FieldDescriptorProto_TYPE_BYTES:
2376 case descriptor.FieldDescriptorProto_TYPE_UINT32:
2378 case descriptor.FieldDescriptorProto_TYPE_ENUM:
2380 case descriptor.FieldDescriptorProto_TYPE_SFIXED32:
2382 case descriptor.FieldDescriptorProto_TYPE_SFIXED64:
2384 case descriptor.FieldDescriptorProto_TYPE_SINT32:
2386 case descriptor.FieldDescriptorProto_TYPE_SINT64:
2400 case descriptor.FieldDescriptorProto_TYPE_BOOL:
2402 case descriptor.FieldDescriptorProto_TYPE_GROUP,
2403 descriptor.FieldDescriptorProto_TYPE_MESSAGE:
2429 case descriptor.FieldDescriptorProto_TYPE_DOUBLE:
2432 case descriptor.FieldDescriptorProto_TYPE_FLOAT:
2435 case descriptor.FieldDescriptorProto_TYPE_INT64,
2436 descriptor.FieldDescriptorProto_TYPE_UINT64,
2437 descriptor.FieldDescriptorProto_TYPE_INT32,
2438 descriptor.FieldDescriptorProto_TYPE_UINT32,
2439 descriptor.FieldDescriptorProto_TYPE_ENUM:
2442 case descriptor.FieldDescriptorProto_TYPE_FIXED64,
2443 descriptor.FieldDescriptorProto_TYPE_SFIXED64:
2446 case descriptor.FieldDescriptorProto_TYPE_FIXED32,
2447 descriptor.FieldDescriptorProto_TYPE_SFIXED32:
2450 case descriptor.FieldDescriptorProto_TYPE_BOOL:
2453 case descriptor.FieldDescriptorProto_TYPE_STRING:
2457 case descriptor.FieldDescriptorProto_TYPE_GROUP:
2460 case descriptor.FieldDescriptorProto_TYPE_MESSAGE:
2465 case descriptor.FieldDescriptorProto_TYPE_BYTES:
2469 case descriptor.FieldDescriptorProto_TYPE_SINT32:
2472 case descriptor.FieldDescriptorProto_TYPE_SINT64:
2485 if *field.Type == descriptor.FieldDescriptorProto_TYPE_GROUP {
2515 var extDesc *Descriptor
2519 extDesc = id.o.(*Descriptor)
2521 extDesc = extObj.(*Descriptor)
2600 pb := proto.Clone(file.FileDescriptorProto).(*descriptor.FileDescriptorProto)
2722 func isOptional(field *descriptor.FieldDescriptorProto) bool {
2723 return field.Label != nil && *field.Label == descriptor.FieldDescriptorProto_LABEL_OPTIONAL
2727 func isRequired(field *descriptor.FieldDescriptorProto) bool {
2728 return field.Label != nil && *field.Label == descriptor.FieldDescriptorProto_LABEL_REQUIRED
2732 func isRepeated(field *descriptor.FieldDescriptorProto) bool {
2733 return field.Label != nil && *field.Label == descriptor.FieldDescriptorProto_LABEL_REPEATED
2737 func isScalar(field *descriptor.FieldDescriptorProto) bool {
2742 case descriptor.FieldDescriptorProto_TYPE_DOUBLE,
2743 descriptor.FieldDescriptorProto_TYPE_FLOAT,
2744 descriptor.FieldDescriptorProto_TYPE_INT64,
2745 descriptor.FieldDescriptorProto_TYPE_UINT64,
2746 descriptor.FieldDescriptorProto_TYPE_INT32,
2747 descriptor.FieldDescriptorProto_TYPE_FIXED64,
2748 descriptor.FieldDescriptorProto_TYPE_FIXED32,
2749 descriptor.FieldDescriptorProto_TYPE_BOOL,
2750 descriptor.FieldDescriptorProto_TYPE_UINT32,
2751 descriptor.FieldDescriptorProto_TYPE_ENUM,
2752 descriptor.FieldDescriptorProto_TYPE_SFIXED32,
2753 descriptor.FieldDescriptorProto_TYPE_SFIXED64,
2754 descriptor.FieldDescriptorProto_TYPE_SINT32,
2755 descriptor.FieldDescriptorProto_TYPE_SINT64:
2792 // See descriptor.proto for more information about this.