toolshonnef.co/go/tools/go/ast/astutil Index | Files

package astutil

import "honnef.co/go/tools/go/ast/astutil"

Index

Functions

func Apply

func Apply(root ast.Node, pre, post ApplyFunc) (result ast.Node)

func CopyExpr

func CopyExpr(node ast.Expr) (ast.Expr, bool)

CopyExpr creates a deep copy of an expression. It doesn't support copying FuncLits and returns ok == false when encountering one.

func Equal

func Equal(a, b ast.Node) bool

func GroupSpecs

func GroupSpecs(fset *token.FileSet, specs []ast.Spec) [][]ast.Spec

func IsBlank

func IsBlank(id ast.Expr) bool

isBlank returns whether id is the blank identifier "_". If id == nil, the answer is false.

func IsIdent

func IsIdent(expr ast.Expr, ident string) bool

func IsIntLiteral

func IsIntLiteral(expr ast.Expr, literal string) bool

Deprecated: use code.IsIntegerLiteral instead.

func IsZero

func IsZero(expr ast.Expr) bool

Deprecated: use IsIntLiteral instead

func NegateDeMorgan

func NegateDeMorgan(expr ast.Expr, recursive bool) ast.Expr

func PathEnclosingInterval

func PathEnclosingInterval(root *ast.File, start, end token.Pos) (path []ast.Node, exact bool)

func Preamble

func Preamble(f *ast.File) string

func SimplifyParentheses

func SimplifyParentheses(node ast.Expr) ast.Expr

func Unparen

func Unparen(e ast.Expr) ast.Expr

Unparen returns e with any enclosing parentheses stripped.

Types

type ApplyFunc

type ApplyFunc = astutil.ApplyFunc

type Cursor

type Cursor = astutil.Cursor

Source Files

upstream.go util.go

Version
v0.6.0-0.dev
Published
Aug 13, 2024
Platform
darwin/amd64
Imports
7 packages
Last checked
47 minutes ago

Tools for package owners.