type go/ast.Node

90 uses

	go/ast (current package)
		ast.go#L32: type Node interface {
		ast.go#L39: 	Node
		ast.go#L45: 	Node
		ast.go#L51: 	Node
		ast.go#L893: 		Node
		commentmap.go#L26: type CommentMap map[Node][]*CommentGroup
		commentmap.go#L28: func (cmap CommentMap) addComment(n Node, c *CommentGroup) {
		commentmap.go#L39: func nodeList(n Node) []Node {
		commentmap.go#L40: 	var list []Node
		commentmap.go#L41: 	Inspect(n, func(n Node) bool {
		commentmap.go#L90: type nodeStack []Node
		commentmap.go#L94: func (s *nodeStack) push(n Node) {
		commentmap.go#L102: func (s *nodeStack) pop(pos token.Pos) (top Node) {
		commentmap.go#L127: func NewCommentMap(fset *token.FileSet, node Node, comments []*CommentGroup) CommentMap {
		commentmap.go#L147: 		p     Node           // previous node
		commentmap.go#L149: 		pg    Node           // previous node group (enclosing nodes of "importance")
		commentmap.go#L178: 			var assoc Node
		commentmap.go#L229: func (cmap CommentMap) Update(old, new Node) Node {
		commentmap.go#L240: func (cmap CommentMap) Filter(node Node) CommentMap {
		commentmap.go#L242: 	Inspect(node, func(n Node) bool {
		commentmap.go#L300: 	var nodes []Node
		commentmap.go#L304: 	slices.SortFunc(nodes, func(a, b Node) int {
		walk.go#L16: 	Visit(node Node) (w Visitor)
		walk.go#L19: func walkList[N Node](v Visitor, list []N) {
		walk.go#L33: func Walk(v Visitor, node Node) {
		walk.go#L358: type inspector func(Node) bool
		walk.go#L360: func (f inspector) Visit(node Node) Visitor {
		walk.go#L371: func Inspect(node Node, f func(Node) bool) {
		walk.go#L380: func Preorder(root Node) iter.Seq[Node] {
		walk.go#L381: 	return func(yield func(Node) bool) {
		walk.go#L383: 		Inspect(root, func(n Node) bool {

	go/doc
		example.go#L27: 	Code        ast.Node
		example.go#L335: func findDeclsAndUnresolved(body ast.Node, topDecls map[*ast.Object]ast.Decl, typMethods map[string][]ast.Decl) ([]ast.Decl, map[string]bool) {
		example.go#L346: 	var inspectFunc func(ast.Node) bool
		example.go#L347: 	inspectFunc = func(n ast.Node) bool {
		example.go#L495: 	ast.Inspect(s, func(n ast.Node) bool {

	go/parser
		resolver.go#L250: func (r *resolver) Visit(node ast.Node) ast.Visitor {

	go/printer
		nodes.go#L1251: 		ast.Inspect(px.X, func(node ast.Node) bool {
		nodes.go#L1803: func (p *printer) nodeSize(n ast.Node, maxSize int) (size int) {
		nodes.go#L1832: func (p *printer) numLines(n ast.Node) int {
		printer.go#L92: 	nodeSizes map[ast.Node]int
		printer.go#L1049: func getDoc(n ast.Node) *ast.CommentGroup {
		printer.go#L1069: func getLastComment(n ast.Node) *ast.CommentGroup {
		printer.go#L1101: 		n, ok := node.(ast.Node)
		printer.go#L1335: func newPrinter(cfg *Config, fset *token.FileSet, nodeSizes map[ast.Node]int) *printer {
		printer.go#L1360: func (cfg *Config) fprint(output io.Writer, fset *token.FileSet, node any, nodeSizes map[ast.Node]int) (err error) {
		printer.go#L1424: 	return cfg.fprint(output, fset, node, make(map[ast.Node]int))

	go/types
		api.go#L276: 	Implicits map[ast.Node]Object
		api.go#L315: 	Scopes map[ast.Node]*Scope
		decl.go#L360: 		node() ast.Node
		decl.go#L376: func (d importDecl) node() ast.Node { return d.spec }
		decl.go#L377: func (d constDecl) node() ast.Node  { return d.spec }
		decl.go#L378: func (d varDecl) node() ast.Node    { return d.spec }
		decl.go#L379: func (d typeDecl) node() ast.Node   { return d.spec }
		decl.go#L380: func (d funcDecl) node() ast.Node   { return d.decl }
		errors.go#L283: func inNode(node ast.Node, pos token.Pos) posSpan {
		errors.go#L300: 	case ast.Node:
		index.go#L433: func unpackIndexedExpr(n ast.Node) *indexedExpr {
		recording.go#L156: func (check *Checker) recordImplicit(node ast.Node, obj Object) {
		recording.go#L172: func (check *Checker) recordScope(node ast.Node, scope *Scope) {
		stmt.go#L153: func (check *Checker) openScope(node ast.Node, comment string) {
		util.go#L50: func startPos(n ast.Node) token.Pos { return n.Pos() }
		util.go#L53: func endPos(n ast.Node) token.Pos { return n.End() }

	golang.org/x/tools/go/packages
		packages.go#L1190: 			Implicits:    make(map[ast.Node]types.Object),
		packages.go#L1192: 			Scopes:       make(map[ast.Node]*types.Scope),

	golang.org/x/tools/internal/typeparams
		common.go#L30: func UnpackIndexExpr(n ast.Node) (x ast.Expr, lbrack token.Pos, indices []ast.Expr, rbrack token.Pos) {

	golang.org/x/tools/internal/typesinternal
		types.go#L150: 		Implicits:    map[ast.Node]types.Object{},
		types.go#L152: 		Scopes:       map[ast.Node]*types.Scope{},

	gotest.tools/v3/internal/source
		defers.go#L9: func scanToDeferLine(fileset *token.FileSet, node ast.Node, lineNum int) ast.Node {
		defers.go#L10: 	var matchedNode ast.Node
		defers.go#L11: 	ast.Inspect(node, func(node ast.Node) bool {
		defers.go#L27: func guessDefer(node ast.Node) (ast.Node, error) {
		defers.go#L41: func collectDefers(node ast.Node) []*ast.DeferStmt {
		defers.go#L43: 	ast.Inspect(node, func(node ast.Node) bool {
		source.go#L51: func getNodeAtLine(fileset *token.FileSet, astFile ast.Node, lineNum int) (ast.Node, error) {
		source.go#L64: func scanToLine(fileset *token.FileSet, node ast.Node, lineNum int) ast.Node {
		source.go#L65: 	var matchedNode ast.Node
		source.go#L66: 	ast.Inspect(node, func(node ast.Node) bool {
		source.go#L79: func getCallExprArgs(fileset *token.FileSet, astFile ast.Node, line int) ([]ast.Expr, error) {
		source.go#L103: func (v *callExprVisitor) Visit(node ast.Node) ast.Visitor {
		source.go#L121: func FormatNode(node ast.Node) (string, error) {
		source.go#L136: 	ast.Node