CodeQL library for Rust
codeql/rust-all 0.2.22 (changelog, source)
Search

Class BlockExprCfgNode

A block expression. For example:

{
    let x = 42;
}
'label: {
    let x = 42;
    x
}

Import path

import codeql.rust.controlflow.CfgNodes

Direct supertypes

Indirect supertypes

Predicates

getTailExpr

Gets the tail expression of this block, if it exists.

Inherited predicates

getAPredecessor

Gets an immediate predecessor, if any.

from NodeImpl
getAPredecessor

Gets an immediate predecessor node of a given flow type, if any.

from NodeImpl
getASplit

Gets a split for this control flow node, if any.

from AstCfgNodeImpl
getASuccessor

Gets an immediate successor, if any.

from NodeImpl
getASuccessor

Gets a successor node of a given type, if any.

from NodeImpl
getAnAttr

Gets any of the attrs of this block expression.

from BlockExprCfgNode
getAstNode

Gets the AST node that this node corresponds to, if any.

from AstCfgNodeImpl
getAttr

Gets the indexth attr of this block expression (0-based).

from BlockExprCfgNode
getBlockExpr

Gets the underlying BlockExpr.

from BlockExprCfgNode
getEnclosingCallable

Gets the enclosing callable of this node.

from NodeImpl
getExpr

Gets the underlying Expr.

from ExprCfgNode
getLabel

Gets the label of this labelable expression, if it exists.

from LabelableExprCfgNode
getLabelableExpr

Gets the underlying LabelableExpr.

from LabelableExprCfgNode
getLocation

Gets the location of this control flow node.

from AstCfgNodeImpl
getNumberOfAttrs

Gets the number of attrs of this block expression.

from BlockExprCfgNode
getScope

Gets the scope of this node.

from NodeImpl
getSplitsString

Gets a comma-separated list of strings for each split in this node, if any.

from AstCfgNodeImpl
getStmtList

Gets the statement list of this block expression, if it exists.

from BlockExprCfgNode
getTryBlockModifier

Gets the try block modifier of this block expression, if it exists.

from BlockExprCfgNode
hasLabel

Holds if getLabel() exists.

from LabelableExprCfgNode
hasStmtList

Holds if getStmtList() exists.

from BlockExprCfgNode
hasTryBlockModifier

Holds if getTryBlockModifier() exists.

from BlockExprCfgNode
isAsync

Holds if this block expression is async.

from BlockExprCfgNode
isBranch

Holds if this node has more than one successor.

from NodeImpl
isCondition

Holds if this control flow node has conditional successors.

from NodeImpl
isConst

Holds if this block expression is const.

from BlockExprCfgNode
isGen

Holds if this block expression is gen.

from BlockExprCfgNode
isJoin

Holds if this node has more than one predecessor.

from NodeImpl
isMove

Holds if this block expression is move.

from BlockExprCfgNode
isUnsafe

Holds if this block expression is unsafe.

from BlockExprCfgNode
toString

Gets a textual representation of this control flow node.

from AstCfgNodeImpl

Charpred