Class Initializer
A C/C++ declaration initializer. For example the initializers 1, 2 and
3 in the following code:
int myVariable = 1;
enum myEnum {
MYENUMCONST = 2
};
void myFunction(int param = 3) {
...
}
But not 4 in the following code:
int myUninitializedVariable;
myUninitializedVariable = 4;
Instead, this is an Assignment.
Import path
import cppDirect supertypes
Indirect supertypes
Known direct subtypes
Predicates
| fromSource | Holds if this initializer is explicit in the source. |
| getAPrimaryQlClass | Gets the name of a primary CodeQL class to which this element belongs. |
| getControlFlowScope | Gets the function containing this control-flow node. |
| getDeclaration | Gets the variable or enum constant being initialized. |
| getEnclosingStmt | Gets the smallest statement containing this control-flow node. |
| getExpr | Gets the initializing expression. |
| getLocation | Gets the primary location of this element. |
| isBraced | Holds if the initializer used the C++ braced initializer notation. |
| toString | Gets a textual representation of this element. |
Inherited predicates
| findRootCause | Gets the source of this element: either itself or a macro that expanded to this element. | from Element |
| getAFalseSuccessor | Gets a node such that the control-flow edge | from ControlFlowNode |
| getAPredecessor | Gets a direct predecessor of this control-flow node, if any. | from ControlFlowNode |
| getASuccessor | Gets a direct successor of this control-flow node, if any. | from ControlFlowNode |
| getATrueSuccessor | Gets a node such that the control-flow edge | from ControlFlowNode |
| getBasicBlock | Gets the | from ControlFlowNode |
| getEnclosingElement | Gets the closest | from Element |
| getFile | Gets the primary file where this element occurs. | from Element |
| getParentScope | Gets the parent scope of this | from Element |
| getPrimaryQlClasses | Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs. | from ElementBase |
| isAffectedByMacro | Holds if this element is affected in any way by a macro. All elements that are totally or partially generated by a macro are included, so this is a super-set of | from Element |
| isAffectedByMacro | INTERNAL: Do not use. | from Element |
| isCondition | Holds if this node is the top-level expression of a conditional statement, meaning that | from ControlFlowNode |
| isFromTemplateInstantiation | Holds if this | from Element |
| isFromUninstantiatedTemplate | Holds if this | from Element |
| isInMacroExpansion | Holds if this element comes from a macro expansion. Only elements that are entirely generated by a macro are included - for elements that partially come from a macro, see | from Element |