package main // Type is a resolved wire type. Size is the fixed prefix, not Go's memory size. type Type struct { Name, GoType, Base, Kind string Size int Variable bool Node *Node Module *Module Fields []Field Resolving, Resolved bool } type Field struct { Name, Param, GoType, Kind string Off, Size, Count, Align int Type *Type Node *Node Expr *Node } type Enum struct { Name, Base string Existing bool Items []EnumItem Node *Node } type EnumItem struct { Name string Value int64 } type Module struct { Pkg, Header, XName, ExtName string Root *Node Imports []*Module Types []*Type Enums []Enum Symbols map[string]*Type Names map[string]*Node Decls, SizeChecks []string NumEvents, NumErrors int // extension event/error code ranges }