Class ReturnStmt
A C/C++ ‘return’ statement.
For example:
return 1+2;
or
return;
Import path
import cpp
Direct supertypes
Indirect supertypes
Known direct subtypes
Predicates
getAPrimaryQlClass | Gets the name of a primary CodeQL class to which this element belongs. |
getExpr | Gets the expression of this ‘return’ statement. |
hasExpr | Holds if this ‘return’ statement has an expression. |
mayBeGloballyImpure | Holds if it is possible that this statement is globally impure. |
mayBeImpure | Holds if it is possible that this statement is impure. If we are not sure, then it holds. |
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 |
fromLibrary | Holds if this element may be from a library. | from Element |
fromSource | Holds if this element may be from source. | from Element |
getAChild | Gets a child of this statement. | from Stmt |
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 |
getAnAttribute | Gets an attribute of this statement, for example | from Stmt |
getBasicBlock | Gets the | from ControlFlowNode |
getCanonicalQLClass | DEPRECATED: use | from ElementBase |
getChild | Gets the | from Stmt |
getChildStmt | Gets a child statement of this statement. | from Stmt |
getControlFlowScope | Gets the function containing this control-flow node. | from Stmt |
getEnclosingBlock | Gets the nearest enclosing block of this statement in the source, if any. | from Stmt |
getEnclosingElement | Gets the closest | from Element |
getEnclosingFunction | Gets the enclosing function of this statement, if any. | from Stmt |
getEnclosingStmt | Gets the smallest statement containing this control-flow node. | from Stmt |
getFile | Gets the primary file where this element occurs. | from Element |
getFollowingStmt | Gets the statement following this statement in the same block, if any. | from Stmt |
getGeneratingMacro | Gets a macro invocation that generates this entire statement. | from Stmt |
getKind | Gets an int indicating the type of statement that this represents. | from Stmt |
getLocation | Gets the primary location of this element. | from Stmt |
getParent | Gets the parent of this statement, if any. | from Stmt |
getParentScope | Gets the parent scope of this | from Element |
getParentStmt | Gets the parent statement of this statement, if any. | from Stmt |
hasChild | Holds if | from Stmt |
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 |
isCompilerGenerated | Holds if this statement was generated by the compiler. | from Stmt |
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 |
isPure | Holds if this statement is side-effect free (a conservative approximation; that is, it may be side-effect free even if this predicate doesn’t hold). | from Stmt |