Class Expr
An expression.
Example:
Math.sqrt(x*x + y*y)
Import path
import javascript
Direct supertypes
Indirect supertypes
Known direct subtypes
- ArrayExpr
- ArrowFunctionExpr
- Assignment
- AwaitExpr
- BinaryExpr
- BindingPattern
- BitwiseExpr
- ClassExpr
- ComprehensionBlock
- ComprehensionExpr
- ConditionalExpr
- ConstantExpr
- Decorator
- DynamicImportExpr
- ExportSpecifier
- ExpressionWithTypeArguments
- ExternalModuleReference
- FunctionBindExpr
- FunctionExpr
- FunctionSentExpr
- GeneratedCodeExpr
- ImportMetaExpr
- ImportSpecifier
- InvokeExpr
- JsxEmptyExpr
- JsxName
- JsxNode
- JsxQualifiedName
- Label
- LegacyLetExpr
- Literal
- LogicalExpr
- NewTargetExpr
- NonNullAssertion
- ObjectExpr
- OptionalUse
- ParExpr
- PathExprCandidate
- PipeRefExpr
- PropAccess
- RefExpr
- Refinement
- RefinementCandidate
- SatisfiesExpr
- SeqExpr
- SuperExpr
- TaggedTemplateExpr
- TemplateElement
- TemplateLiteral
- TemplateVarRefExpr
- ThisExpr
- TypeAssertion
- UnaryExpr
- UpdateExpr
- VariableDeclarator
- XUnitAnnotation
- XUnitAttribute
- XmlAnyName
- XmlAttributeSelector
- XmlDotDotExpression
- XmlFilterExpression
- XmlQualifiedIdentifier
- YieldExpr
Predicates
accessesGlobal | Holds if this expression accesses the global variable |
getExceptionTarget | Gets the data-flow node where exceptions thrown by this expression will propagate if this expression causes an exception to be thrown. |
getIntValue | Gets the constant 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. |
getParentExpr | Gets the expression that is the parent of this expression in the AST, if any. |
getStringValue | Gets the constant string value this expression evaluates to, if any. |
getType | Gets the static type of this expression, as determined by the TypeScript type system. |
inNullSensitiveContext | Holds if the syntactic context that the expression appears in relies on the expression being non-null/non-undefined. |
isImpure | Holds if this expression is impure, that is, its evaluation could have side effects. |
isPure | Holds if this expression is pure, that is, its evaluation is guaranteed to be side-effect free. |
mayHaveBooleanValue | Holds if this expression may evaluate to |
mayHaveStringValue | Holds if this expression may evaluate to |
mayReferToParameter | Holds if this expression may refer to the initial value of parameter |
stripParens | Gets this expression, with any surrounding parentheses removed. |
toString | Gets a textual representation of this element. |
Inherited predicates
analyze | Gets type inference results for this element. | from ValueNode |
describeControlFlowNode | For internal use. | from ControlFlowNode |
flow | Gets the data flow node associated with this program element. | from ValueNode |
getAChild | Gets a child node of this node. | from AstNode |
getAChildExpr | Gets a child expression of this node. | from AstNode |
getAChildStmt | Gets a child statement of this node. | from AstNode |
getAPredecessor | Gets a node preceding this node in the CFG. | from ControlFlowNode |
getAPrimaryQlClass | Gets the primary QL class for the Locatable. | from Locatable |
getASuccessor | Gets a node succeeding this node in the CFG. | from ControlFlowNode |
getAToken | Gets a token belonging to this element. | from AstNode |
getBasicBlock | Gets the basic block this node belongs to. | from ControlFlowNode |
getChild | Gets the | from AstNode |
getChildExpr | Gets the | from AstNode |
getChildStmt | Gets the | from AstNode |
getChildTypeExpr | Gets the | from AstNode |
getContainer | Gets the function or toplevel to which this node belongs. | from NodeInStmtContainer |
getDocumentation | Gets the JSDoc comment associated with this expression or type or its parent statement, if any. | from ExprOrType |
getEnclosingFunction | Gets the function in which this expression or type appears, if any. | from ExprOrType |
getEnclosingStmt | Gets the statement in which this expression or type appears. | from ExprOrType |
getEndLine | Gets the line on which this element ends. | from Locatable |
getFile | Gets the file this program element comes from. | from AstNode |
getFirstControlFlowNode | Gets the first control flow node belonging to this syntactic entity. | from AstNode |
getFirstToken | Gets the first token belonging to this element. | from AstNode |
getLastToken | Gets the last token belonging to this element. | from AstNode |
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 AstNode |
getNumChildStmt | Gets the number of child statements of this node. | from AstNode |
getNumLines | Gets the number of lines covered by this element. | from Locatable |
getParent | Gets the parent node of this 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 Locatable |
getStartLine | Gets the line on which this element starts. | from Locatable |
getTopLevel | Gets the toplevel syntactic unit to which this element belongs. | from AstNode |
getUnderlyingReference | Gets the innermost reference that this expression evaluates to, if any. | from ExprOrType |
getUnderlyingValue | Gets the innermost expression that this expression evaluates to. | from ExprOrType |
inExternsFile | Holds if this syntactic entity belongs to an externs file. | from AstNode |
isAFinalNode | Holds if this is a final node, that is, a CFG node where execution of a toplevel or function terminates. | from ControlFlowNode |
isAFinalNodeOfContainer | Holds if this is a final node of | from ControlFlowNode |
isAmbient | Holds if this is part of an ambient declaration or type annotation in a TypeScript file. | from AstNode |
isBranch | Holds if this is a node with more than one successor. | from ControlFlowNode |
isJoin | Holds if this is a node with more than one predecessor. | from ControlFlowNode |
isStart | Holds if this is a start node, that is, the CFG node where execution of a toplevel or function begins. | from ControlFlowNode |
isUnreachable | Holds if this node is unreachable, that is, it has no predecessors in the CFG. Entry nodes are always considered reachable. | from ControlFlowNode |