Module Expr
Provides classes modeling C/C++ expressions.
Import path
import semmle.code.cpp.exprs.ExprImports
| Element | Provides the |
Classes
| AddressOfExpr | A C/C++ address-of expression. |
| AssumeExpr | A Microsoft C/C++ __assume expression. |
| BinaryOperation | A C/C++ binary operation. |
| BlockExpr | A code block expression, for example: |
| C11GenericExpr | A node representing a C11 |
| CoAwaitExpr | A C/C++ |
| CoYieldExpr | A C/C++ |
| CommaExpr | A C/C++ comma expression. |
| DeleteArrayExpr | A C++ |
| DeleteExpr | A C++ |
| DeleteOrDeleteArrayExpr | A C++ |
| ErrorExpr | A C/C++ expression that could not be resolved, or that can no longer be represented due to a database upgrade or downgrade. |
| Expr | A C/C++ expression. |
| FoldExpr | A C++17 fold expression. This will only appear in an uninstantiated template; any instantiations of the template will instead contain the sequence of expressions given by expanding the fold. |
| NewArrayExpr | A C++ |
| NewExpr | A C++ |
| NewOrNewArrayExpr | A C++ |
| NoExceptExpr | A C++11 |
| Operation | A C/C++ operation. |
| ParenthesisExpr | A C/C++ parenthesis expression. |
| ParenthesizedBracedInitializerList | A C++11 parenthesized braced initializer list within a template. |
| PointerDereferenceExpr | An instance of the built-in unary |
| ReThrowExpr | A C++ |
| ReferenceDereferenceExpr | An implicit conversion from type |
| ReferenceToExpr | An implicit conversion from type |
| ReuseExpr | An expression representing the re-use of another expression. |
| SpaceshipExpr | A C++ three-way comparison operation, also known as the spaceship operation. This is specific to C++20 and later. |
| StmtExpr | A compound statement enclosed in parentheses used as an expression (a GNU extension to C/C++). In the example below, |
| ThisExpr | A C++ |
| ThrowExpr | A C++ |
| UnaryOperation | A C/C++ unary operation. |