type Node … type node … func (n *node) Pos() Pos { … } func (n *node) SetPos(pos Pos) { … } func (*node) aNode() { … } type File … type Decl … type ImportDecl … type ConstDecl … type TypeDecl … type VarDecl … type FuncDecl … type decl … func (*decl) aDecl() { … } type Group … func NewName(pos Pos, value string) *Name { … } type Expr … type BadExpr … type Name … type BasicLit … type CompositeLit … type KeyValueExpr … type FuncLit … type ParenExpr … type SelectorExpr … type IndexExpr … type SliceExpr … type AssertExpr … type TypeSwitchGuard … type Operation … type CallExpr … type ListExpr … type ArrayType … type SliceType … type DotsType … type StructType … type Field … type InterfaceType … type FuncType … type MapType … type ChanType … type expr … func (*expr) aExpr() { … } type ChanDir … const _ … const SendOnly … const RecvOnly … type Stmt … type SimpleStmt … type EmptyStmt … type LabeledStmt … type BlockStmt … type ExprStmt … type SendStmt … type DeclStmt … type AssignStmt … type BranchStmt … type CallStmt … type ReturnStmt … type IfStmt … type ForStmt … type SwitchStmt … type SelectStmt … type RangeClause … type CaseClause … type CommClause … type stmt … func (stmt) aStmt() { … } type simpleStmt … func (simpleStmt) aSimpleStmt() { … } type CommentKind … const Above … const Below … const Left … const Right … type Comment …