Module Expr
Provides classes for working with expressions.
Import path
import semmle.go.Expr
Imports
go | Provides classes for working with Go programs. |
Classes
AddExpr | An addition expression using |
AddressExpr | A unary address-of expression using |
AndExpr | A bitwise and-expression using |
AndNotExpr | A bitwise and-not expression using |
ArithmeticBinaryExpr | A binary arithmetic expression, that is, |
ArithmeticExpr | An expression with an arithmetic operator like |
ArithmeticUnaryExpr | An expression with a unary arithmetic operator, that is, unary |
ArrayLit | An array literal. |
ArrayOrSliceLit | An array or slice literal. |
ArrayTypeExpr | An expression representing an array type. |
BadExpr | A bad expression, that is, an expression that could not be parsed. |
BasicLit | A literal expression of basic type. |
BinaryExpr | A binary expression. |
BitwiseBinaryExpr | A binary bitwise expression, that is, |
BitwiseExpr | An expression with a bitwise operator such as |
BitwiseUnaryExpr | An expression with a unary bitwise operator, that is, |
BlankIdent | The blank identifier |
CallExpr | A function call expression. |
CallOrConversionExpr | An expression that syntactically could either be a function call or a type conversion expression. |
ChanTypeExpr | An expression representing a channel type. |
CharLit | A rune literal. |
ComparisonExpr | A comparison expression, that is, |
ComplementExpr | A unary complement expression using |
CompositeLit | A composite literal |
ConstantName | A name referring to a constant. |
ConversionExpr | A type conversion expression. |
DerefExpr | A unary pointer-dereference expression. |
Ellipsis | An ellipsis expression, representing either the |
EqlExpr | An equality test using |
EqualityTestExpr | An equality test, that is, |
Expr | An expression. |
FloatLit | A floating-point literal. |
FuncLit | A function literal. |
FuncTypeExpr | An expression representing a function type. |
FunctionName | A name referring to a function. |
GenericFunctionInstantiationExpr | A generic function instantiation, that is, a base expression that represents a generic function, followed by a list of type arguments. |
GenericTypeInstantiationExpr | A generic type instantiation, that is, a base expression that is a generic type followed by a list of type arguments. |
GeqExpr | A greater-than-or-equal test using |
GtrExpr | A greater-than test using |
Ident | An identifier. |
ImagLit | An imaginary literal. |
IndexExpr | An index expression, that is, a base expression followed by an index. Expressions which represent generic type instantiations have been excluded. |
IntLit | An integer literal. |
InterfaceTypeExpr | An expression representing an interface type. |
KeyValueExpr | A key-value pair in a composite literal. |
LabelName | A name referring to a statement label. |
LandExpr | A logical-and expression using |
LeqExpr | A less-than-or-equal test using |
Literal | A literal expression. |
LogicalBinaryExpr | A binary logical expression, that is, |
LogicalExpr | An expression with a logical operator like |
LogicalUnaryExpr | An expression with a unary logical operator, that is, |
LorExpr | A logical-or expression using |
LssExpr | A less-than test using |
MapLit | A map literal. |
MapTypeExpr | An expression representing a map type. |
MinusExpr | A unary minus expression using |
MulExpr | A multiplication expression using |
Name | A (possibly qualified) name referring to a package, type, constant, variable, function or label. |
NeqExpr | An inequality test using |
NotExpr | A unary “not” expression using |
OperatorExpr | An expression with a (unary or binary) operator. |
OrExpr | A bitwise or expression using |
PackageName | A name referring to an imported package. |
ParenExpr | A parenthesized expression. |
PlusExpr | A unary plus expression using |
PromotedSelector | A selector expression that refers to a promoted field or a promoted method. These selectors may implicitly address an embedded struct of their base type - for example, the selector |
QualifiedName | A qualified name. |
QuoExpr | A division or quotient expression using |
RecvChanTypeExpr | An expression representing a receive-only channel type. |
RecvExpr | A unary receive expression using |
ReferenceExpr | An expression referring to a memory location. |
RelationalComparisonExpr | A relational comparison, that is, |
RemExpr | A remainder or modulo expression using |
SelectorExpr | A selector expression, that is, a base expression followed by a selector. |
SendChanTypeExpr | An expression representing a send-only channel type. |
SendRecvChanTypeExpr | An expression representing a duplex channel type that can both send and receive data. |
ShiftExpr | A shift expression, that is, |
ShlExpr | A left-shift expression using |
ShrExpr | A right-shift expression using |
SimpleName | A simple (that is, unqualified) name. |
SliceExpr | A slice expression, that is, a base expression followed by slice indices. |
SliceLit | A slice literal. |
StarExpr | A star expression. |
StringLit | A string literal. |
StructLit | A struct literal. |
StructTypeExpr | An expression representing a struct type. |
SubExpr | A subtraction expression using |
TypeAssertExpr | A type assertion expression. |
TypeExpr | An expression referring to a type. |
TypeName | A name referring to a type. |
TypeSetLiteralExpr | An expression representing a type set literal. |
UnaryExpr | An expression with a unary operator. |
ValueExpr | An expression that refers to a value (as opposed to a package, a type or a statement label). |
ValueName | A name referring to a value, that is, a constant, variable or function. |
VariableName | A name referring to a variable. |
XorExpr | An exclusive-or expression using |
Aliases
BitAndExpr | A bitwise and-expression using |
BitOrExpr | A bitwise or expression using |
DivExpr | A division or quotient expression using |
EqExpr | An equality test using |
GEExpr | A greater-than-or-equal test using |
GTExpr | A greater-than test using |
LEExpr | A less-than-or-equal test using |
LShiftExpr | A left-shift expression using |
LTExpr | A less-than test using |
LogAndExpr | A logical-and expression using |
LogOrExpr | A logical-or expression using |
ModExpr | A remainder or modulo expression using |
RShiftExpr | A right-shift expression using |
RuneLit | A rune literal. |