| 759 | } |
| 760 | |
| 761 | func (e *encoder) enum(n *semantic.Enum) (outID uint64) { |
| 762 | e.build(&e.instances.Enum, e.maps.Enum, n, &outID, func() *Enum { |
| 763 | n.SortMembers() |
| 764 | p := &Enum{} |
| 765 | p.Owner = e.node(n.Owner()) |
| 766 | p.Ast = e.astEnum(n.AST) |
| 767 | p.Annotations = e.annotations(n.Annotations) |
| 768 | p.Name = e.str(n.Name()) |
| 769 | p.Docs = e.docs(n.Docs) |
| 770 | p.IsBitfield = n.IsBitfield |
| 771 | p.NumberType = e.ty(n.NumberType) |
| 772 | foreach(n.Entries, e.enumEntry, &p.Entries) |
| 773 | return p |
| 774 | }) |
| 775 | return |
| 776 | } |
| 777 | |
| 778 | func (e *encoder) enumEntry(n *semantic.EnumEntry) (outID uint64) { |
| 779 | e.build(&e.instances.EnumEntry, e.maps.EnumEntry, n, &outID, func() *EnumEntry { |