go/ast.UnaryExpr.Op (field)

22 uses

	go/ast (current package)
		ast.go#L408: 		Op    token.Token // operator

	go/doc
		exports.go#L179: 		if t.Op == token.TILDE { // approximation element

	go/parser
		parser.go#L1220: 		t.Op = token.TILDE
		parser.go#L1784: 		return &ast.UnaryExpr{OpPos: pos, Op: op, X: x}
		parser.go#L1830: 		return &ast.UnaryExpr{OpPos: arrow, Op: token.ARROW, X: x}
		parser.go#L1932: 			y = []ast.Expr{&ast.UnaryExpr{OpPos: pos, Op: token.RANGE, X: p.parseRhs()}}
		parser.go#L2358: 				y := []ast.Expr{&ast.UnaryExpr{OpPos: pos, Op: token.RANGE, X: p.parseRhs()}}
		parser.go#L2726: 		return x.Op == token.TILDE
		resolver.go#L436: 					Rhs:    []ast.Expr{&ast.UnaryExpr{Op: token.RANGE, X: n.X}},

	go/printer
		nodes.go#L426: 		return x.Op == token.TILDE
		nodes.go#L689: 		switch e.Op.String() + r.Op.String() {
		nodes.go#L859: 			p.print(x.Op)
		nodes.go#L860: 			if x.Op == token.RANGE {

	go/types
		decl.go#L718: 		wrap = op.Op == token.TILDE
		expr.go#L108: 		if int(e.Op) < len(op2str1) {
		expr.go#L109: 			return op2str1[e.Op]
		expr.go#L135: 	op := e.Op
		expr.go#L1124: 		if e.Op == token.ARROW {
		exprstring.go#L117: 		buf.WriteString(x.Op.String())
		stmt.go#L823: 				if x, _ := ast.Unparen(rhs).(*ast.UnaryExpr); x != nil && x.Op == token.ARROW {
		union.go#L142: 	if op, _ := x.(*ast.UnaryExpr); op != nil && op.Op == token.TILDE {

	gotest.tools/v3/internal/assert
		assert.go#L144: 	if unaryExpr, ok := expr.(*ast.UnaryExpr); ok && unaryExpr.Op == token.NOT {