clang 20.0.0git
|
Analyzes whether any mutative operations are applied to an expression within a given statement. More...
#include "clang/Analysis/Analyses/ExprMutationAnalyzer.h"
Classes | |
struct | Analyzer |
struct | Memoized |
Public Member Functions | |
ExprMutationAnalyzer (const Stmt &Stm, ASTContext &Context) | |
bool | isMutated (const Expr *Exp) |
bool | isMutated (const Decl *Dec) |
const Stmt * | findMutation (const Expr *Exp) |
const Stmt * | findMutation (const Decl *Dec) |
bool | isPointeeMutated (const Expr *Exp) |
bool | isPointeeMutated (const Decl *Dec) |
const Stmt * | findPointeeMutation (const Expr *Exp) |
const Stmt * | findPointeeMutation (const Decl *Dec) |
Static Public Member Functions | |
static bool | isUnevaluated (const Stmt *Stm, ASTContext &Context) |
check whether stmt is unevaluated. | |
Friends | |
class | FunctionParmMutationAnalyzer |
Analyzes whether any mutative operations are applied to an expression within a given statement.
Definition at line 21 of file ExprMutationAnalyzer.h.
|
inline |
Definition at line 79 of file ExprMutationAnalyzer.h.
Definition at line 89 of file ExprMutationAnalyzer.h.
References clang::ExprMutationAnalyzer::Analyzer::findMutation().
Definition at line 88 of file ExprMutationAnalyzer.h.
References clang::ExprMutationAnalyzer::Analyzer::findMutation().
Referenced by isMutated().
Definition at line 100 of file ExprMutationAnalyzer.h.
References clang::ExprMutationAnalyzer::Analyzer::findPointeeMutation().
Definition at line 97 of file ExprMutationAnalyzer.h.
References clang::ExprMutationAnalyzer::Analyzer::findPointeeMutation().
Referenced by isPointeeMutated().
Definition at line 87 of file ExprMutationAnalyzer.h.
References findMutation().
Definition at line 86 of file ExprMutationAnalyzer.h.
References findMutation().
Definition at line 94 of file ExprMutationAnalyzer.h.
References findPointeeMutation().
Definition at line 91 of file ExprMutationAnalyzer.h.
References findPointeeMutation().
|
static |
check whether stmt is unevaluated.
mutation analyzer will ignore the content in unevaluated stmt.
Definition at line 258 of file ExprMutationAnalyzer.cpp.
References clang::ast_matchers::anyOf, clang::ast_matchers::cxxNoexceptExpr, clang::ast_matchers::expr, clang::ast_matchers::genericSelectionExpr, clang::ast_matchers::hasAncestor, clang::ast_matchers::hasDescendant, clang::ast_matchers::match(), clang::ast_matchers::sizeOfExpr(), clang::ast_matchers::stmt, clang::ast_matchers::typeLoc, clang::ast_matchers::unaryExprOrTypeTraitExpr, clang::ast_matchers::unless, and clang::ast_matchers::variableArrayType.
|
friend |
Definition at line 22 of file ExprMutationAnalyzer.h.