func parse(name string, src []byte, flags parser.Mode) *ast.File { … }
func sourceLine(n ast.Node) int { … }
func (f *File) ParseGo(abspath string, src []byte) { … }
func commentText(g *ast.CommentGroup) string { … }
func (f *File) validateIdents(x interface{ … }
func (f *File) saveExprs(x interface{ … }
func (f *File) saveRef(n *ast.Expr, context astContext) { … }
func (f *File) saveCall(call *ast.CallExpr, context astContext) { … }
func (f *File) saveExport(x interface{ … }
func (f *File) saveExport2(x interface{ … }
type astContext …
const ctxProg …
const ctxEmbedType …
const ctxType …
const ctxStmt …
const ctxExpr …
const ctxField …
const ctxParam …
const ctxAssign2 …
const ctxSwitch …
const ctxTypeSwitch …
const ctxFile …
const ctxDecl …
const ctxSpec …
const ctxDefer …
const ctxCall …
const ctxCall2 …
const ctxSelector …
func (f *File) walk(x interface{ … }
func unparen(x ast.Expr) ast.Expr { … }