CodeQL library for JavaScript/TypeScript
codeql/javascript-all 2.1.1-dev (changelog, source)
Search

Class ArrayExpr

An array literal.

Examples:

[ 1, , [ 3, 4 ] ]

Import path

import javascript

Direct supertypes

Indirect supertypes

Known direct subtypes

    Predicates

    elementIsOmitted

    Holds if the ith element of this array literal is omitted.

    getAPrimaryQlClass

    Gets the primary QL class for the Locatable.

    getAnElement

    Gets an element of this array literal.

    getElement

    Gets the ith element of this array literal.

    getSize

    Gets the number of elements in this array literal.

    hasOmittedElement

    Holds if this array literal has an omitted element.

    hasTrailingComma

    Holds if this array literal includes a trailing comma after the last element.

    isImpure

    Holds if this expression is impure, that is, its evaluation could have side effects.

    Inherited predicates

    accessesGlobal

    Holds if this expression accesses the global variable g, either directly or through the window object.

    from Expr
    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
    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 ith child node of this node.

    from AstNode
    getChildExpr

    Gets the ith child expression of this node.

    from AstNode
    getChildStmt

    Gets the ith child statement of this node.

    from AstNode
    getChildTypeExpr

    Gets the ith child type expression of this node.

    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
    getExceptionTarget

    Gets the data-flow node where exceptions thrown by this expression will propagate if this expression causes an exception to be thrown.

    from Expr
    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
    getIntValue

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

    from Expr
    getKind

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

    from Expr
    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
    getParentExpr

    Gets the expression that is the parent of this expression in the AST, if any.

    from Expr
    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
    getStringValue

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

    from Expr
    getTopLevel

    Gets the toplevel syntactic unit to which this element belongs.

    from AstNode
    getType

    Gets the static type of this expression, as determined by the TypeScript type system.

    from Expr
    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
    inNullSensitiveContext

    Holds if the syntactic context that the expression appears in relies on the expression being non-null/non-undefined.

    from Expr
    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 container, that is, a CFG node where execution of that toplevel or function terminates.

    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
    isPure

    Holds if this expression is pure, that is, its evaluation is guaranteed to be side-effect free.

    from Expr
    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
    mayHaveBooleanValue

    Holds if this expression may evaluate to b.

    from Expr
    mayHaveStringValue

    Holds if this expression may evaluate to s.

    from Expr
    mayReferToParameter

    Holds if this expression may refer to the initial value of parameter p.

    from Expr
    stripParens

    Gets this expression, with any surrounding parentheses removed.

    from Expr
    toString

    Gets a textual representation of this element.

    from Expr