CodeQL library for Go
codeql/go-all 2.1.2-dev (changelog, source)
Search

Class Expr

An expression.

Examples:

x + 1
y < 0

Import path

import semmle.go.Expr

Direct supertypes

Indirect supertypes

Known direct subtypes

Predicates

getBoolValue

Gets the boolean value this expression evalutes to, if any.

getExactValue

Gets the string representation of the exact value this expression evaluates to, if any.

getFloatValue

Gets the floating-point value this expression evaluates to, if any.

getGlobalValueNumber

Gets the global value number of this expression.

getIntValue

Gets the integer value this expression evaluates to, if any.

getKind

Gets the kind of this expression, which is an integer value representing the expression’s node type.

getNumericValue

Gets either getFloatValue or getIntValue.

getStringValue

Gets the string value this expression evaluates to, if any.

getType

Gets the type of this expression.

hasComplexValue

Holds if the complex value this expression evaluates to has real part real and imaginary part imag.

isConst

Holds if this expression is constant, that is, if its value is determined at compile-time.

isPlatformIndependentConstant

Holds if this expression has a constant value which is guaranteed not to depend on the platform where it is evaluated.

mayHaveOwnSideEffects

Holds if this expression may have observable side effects of its own (that is, independent of whether its sub-expressions may have side effects).

mayHaveSideEffects

Holds if the evaluation of this expression may produce observable side effects.

stripParens

Gets this expression, with any surrounding parentheses removed.

toString

Gets a textual representation of this element.

Inherited predicates

getAChild

Gets a child node of this node.

from AstNode
getAChildExpr

Gets an expression that is a child node of this node in the AST.

from ExprParent
getAPrimaryQlClass

Gets the name of a primary CodeQL class to which this node belongs.

from AstNode
getChild

Gets the ith child node of this node.

from AstNode
getChildExpr

Gets the ith child expression of this node.

from ExprParent
getEnclosingFunction

Gets the innermost function definition to which this AST node belongs, if any.

from AstNode
getFile

Gets the file this program element comes from.

from Locatable
getLocation

Gets this element’s location.

from Locatable
getNumChild

Gets the number of child nodes of this node.

from AstNode
getNumChildExpr

Gets the number of child expressions of this node.

from ExprParent
getNumLines

Gets the number of lines covered by this element.

from Locatable
getParent

Gets the parent node of this AST node, if any.

from AstNode
getPrimaryQlClasses

Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs.

from AstNode
getUniquelyNumberedChild

Get an AstNode child, ordered by child kind and then by index.

from AstNode
hasLocationInfo

Holds if this element is at the specified location. The location spans column startcolumn of line startline to column endcolumn of line endline in file filepath. For more information, see Locations.

from Locatable