CodeQL library for C/C++
codeql/cpp-all 0.12.12-dev (changelog, source)
Search

Class PreConstructorInitThis

INTERNAL: do not use.

A synthetic data-flow node that plays the role of the pre-update this pointer in a ConstructorFieldInit. For example, the x(1) in C() : x(1) { } is roughly equivalent to this.x = 1, and this node is equivalent to the this before the field has been assigned.

Import path

import semmle.code.cpp.dataflow.internal.DataFlowUtil

Direct supertypes

Indirect supertypes

Predicates

getConstructorFieldInit
getFunction

Gets the function to which this node belongs.

getLocation

Gets the location of this element.

getType

Gets the type of this node.

toString

Gets a textual representation of this element.

Inherited predicates

asDefiningArgument

Gets the argument that defines this DefinitionByReferenceNode, if any. This predicate should be used instead of asExpr when referring to the value of a reference argument after the call has returned. For example, in f(&x), this predicate will have &x as its result for the Node that represents the new value of x.

from Node
asExpr

Gets the expression corresponding to this node, if any. This predicate only has a result on nodes that represent the value of evaluating the expression. For data flowing out of an expression, like when an argument is passed by reference, use asDefiningArgument instead of asExpr.

from Node
asParameter

Gets the parameter corresponding to this node, if any.

from Node
asPartialDefinition

Gets the expression that is partially defined by this node, if any.

from Node
asUninitialized

Gets the uninitialized local variable corresponding to this node, if any.

from Node
getEnclosingCallable

INTERNAL: Do not use. Alternative name for getFunction.

from Node
getTypeBound

Gets an upper bound on the type of this node.

from Node
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 Node