class EvaluatedExprVisitorBase
Declaration
template <template <typename> class... Ptr, typename ImplClass>
class EvaluatedExprVisitorBase { /* full declaration omitted */ };
Description
Given a potentially-evaluated expression, this visitor visits all of its potentially-evaluated subexpressions, recursively.
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:30
Templates
- template
class Ptr - ImplClass
Member Variables
- protected const clang::ASTContext& Context
Method Overview
- public EvaluatedExprVisitorBase<Ptr, ImplClass>(const clang::ASTContext & Context)
- public void VisitBlockExpr(typename Ptr<BlockExpr>::type E)
- public void VisitCXXNoexceptExpr(typename Ptr<CXXNoexceptExpr>::type E)
- public void VisitCXXTypeidExpr(typename Ptr<CXXTypeidExpr>::type E)
- public void VisitCXXUuidofExpr(typename Ptr<CXXUuidofExpr>::type E)
- public void VisitCallExpr(typename Ptr<CallExpr>::type CE)
- public void VisitChooseExpr(typename Ptr<ChooseExpr>::type E)
- public void VisitDeclRefExpr(typename Ptr<DeclRefExpr>::type E)
- public void VisitDesignatedInitExpr(typename Ptr<DesignatedInitExpr>::type E)
- public void VisitExpressionTraitExpr(typename Ptr<ExpressionTraitExpr>::type E)
- public void VisitGenericSelectionExpr(typename Ptr<GenericSelectionExpr>::type E)
- public void VisitIfStmt(typename Ptr<IfStmt>::type If)
- public void VisitLambdaExpr(typename Ptr<LambdaExpr>::type LE)
- public void VisitMemberExpr(typename Ptr<MemberExpr>::type E)
- public void VisitOffsetOfExpr(typename Ptr<OffsetOfExpr>::type E)
- public void VisitStmt(typename Ptr<Stmt>::type S)
- public void VisitUnaryExprOrTypeTraitExpr(typename Ptr<UnaryExprOrTypeTraitExpr>::type E)
- public ImplClass & getDerived()
- public bool shouldVisitDiscardedStmt() const
Methods
¶EvaluatedExprVisitorBase<Ptr, ImplClass>(
const clang::ASTContext& Context)
EvaluatedExprVisitorBase<Ptr, ImplClass>(
const clang::ASTContext& Context)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:40
Parameters
- const clang::ASTContext& Context
¶void VisitBlockExpr(
typename Ptr<BlockExpr>::type E)
void VisitBlockExpr(
typename Ptr<BlockExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:48
Parameters
- typename Ptr<BlockExpr>::type E
¶void VisitCXXNoexceptExpr(
typename Ptr<CXXNoexceptExpr>::type E)
void VisitCXXNoexceptExpr(
typename Ptr<CXXNoexceptExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:50
Parameters
- typename Ptr<CXXNoexceptExpr>::type E
¶void VisitCXXTypeidExpr(
typename Ptr<CXXTypeidExpr>::type E)
void VisitCXXTypeidExpr(
typename Ptr<CXXTypeidExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:82
Parameters
- typename Ptr<CXXTypeidExpr>::type E
¶void VisitCXXUuidofExpr(
typename Ptr<CXXUuidofExpr>::type E)
void VisitCXXUuidofExpr(
typename Ptr<CXXUuidofExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:49
Parameters
- typename Ptr<CXXUuidofExpr>::type E
¶void VisitCallExpr(
typename Ptr<CallExpr>::type CE)
void VisitCallExpr(
typename Ptr<CallExpr>::type CE)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:87
Parameters
- typename Ptr<CallExpr>::type CE
¶void VisitChooseExpr(
typename Ptr<ChooseExpr>::type E)
void VisitChooseExpr(
typename Ptr<ChooseExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:57
Parameters
- typename Ptr<ChooseExpr>::type E
¶void VisitDeclRefExpr(
typename Ptr<DeclRefExpr>::type E)
void VisitDeclRefExpr(
typename Ptr<DeclRefExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:44
Parameters
- typename Ptr<DeclRefExpr>::type E
¶void VisitDesignatedInitExpr(
typename Ptr<DesignatedInitExpr>::type E)
void VisitDesignatedInitExpr(
typename Ptr<DesignatedInitExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:76
Parameters
- typename Ptr<DesignatedInitExpr>::type E
¶void VisitExpressionTraitExpr(
typename Ptr<ExpressionTraitExpr>::type E)
void VisitExpressionTraitExpr(
typename Ptr<ExpressionTraitExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:47
Parameters
- typename Ptr<ExpressionTraitExpr>::type E
¶void VisitGenericSelectionExpr(
typename Ptr<GenericSelectionExpr>::type E)
void VisitGenericSelectionExpr(
typename Ptr<GenericSelectionExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:65
Parameters
- typename Ptr<GenericSelectionExpr>::type E
¶void VisitIfStmt(typename Ptr<IfStmt>::type If)
void VisitIfStmt(typename Ptr<IfStmt>::type If)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:109
Parameters
- typename Ptr<IfStmt>::type If
¶void VisitLambdaExpr(
typename Ptr<LambdaExpr>::type LE)
void VisitLambdaExpr(
typename Ptr<LambdaExpr>::type LE)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:92
Parameters
- typename Ptr<LambdaExpr>::type LE
¶void VisitMemberExpr(
typename Ptr<MemberExpr>::type E)
void VisitMemberExpr(
typename Ptr<MemberExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:52
Parameters
- typename Ptr<MemberExpr>::type E
¶void VisitOffsetOfExpr(
typename Ptr<OffsetOfExpr>::type E)
void VisitOffsetOfExpr(
typename Ptr<OffsetOfExpr>::type E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:45
Parameters
- typename Ptr<OffsetOfExpr>::type E
¶void VisitStmt(typename Ptr<Stmt>::type S)
void VisitStmt(typename Ptr<Stmt>::type S)
Description
The basis case walks all of the children of the statement or expression, assuming they are all potentially evaluated.
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:103
Parameters
- typename Ptr<Stmt>::type S
¶void VisitUnaryExprOrTypeTraitExpr(
typename Ptr<UnaryExprOrTypeTraitExpr>::type
E)
void VisitUnaryExprOrTypeTraitExpr(
typename Ptr<UnaryExprOrTypeTraitExpr>::type
E)
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:46
Parameters
- typename Ptr<UnaryExprOrTypeTraitExpr>::type E
¶ImplClass& getDerived()
ImplClass& getDerived()
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:121
¶bool shouldVisitDiscardedStmt() const
bool shouldVisitDiscardedStmt() const
Declared at: clang/include/clang/AST/EvaluatedExprVisitor.h:37