A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://clang.llvm.org/doxygen/DynamicRecursiveASTVisitor_8cpp_source.html below:

clang: lib/AST/DynamicRecursiveASTVisitor.cpp Source File

16using namespace clang

;

97 return

Visitor.ShouldVisitTemplateInstantiations;

101 return

Visitor.ShouldWalkTypesOfTypeLocs;

105 return

Visitor.ShouldVisitImplicitCode;

123 return

Visitor.TraverseConstructorInitializer(

Init

);

127 return

Visitor.TraverseTemplateArgument(Arg);

131 return

Visitor.TraverseTemplateArgumentLoc(ArgLoc);

135 return

Visitor.TraverseTemplateName(Template);

139 return

Visitor.TraverseObjCProtocolLoc(ProtocolLoc);

143 return

Visitor.TraverseTypeConstraint(

C

);

146 return

Visitor.TraverseConceptRequirement(R);

149 return

Visitor.TraverseConceptTypeRequirement(R);

152 return

Visitor.TraverseConceptExprRequirement(R);

155 return

Visitor.TraverseConceptNestedRequirement(R);

159 return

Visitor.TraverseConceptReference(CR);

163 return

Visitor.TraverseCXXBaseSpecifier(

Base

);

167 return

Visitor.TraverseDeclarationNameInfo(NameInfo);

172 return

Visitor.TraverseLambdaCapture(LE,

C

,

Init

);

176 return

Visitor.TraverseNestedNameSpecifier(NNS);

180 return

Visitor.TraverseNestedNameSpecifierLoc(NNS);

184 return

Visitor.VisitConceptReference(CR);

198 return

Visitor.dataTraverseNode(S);

208#define DEF_TRAVERSE_TMPL_INST(kind) \ 209 bool TraverseTemplateInstantiations(kind##TemplateDecl *D) { \ 210 return Visitor.TraverseTemplateInstantiations(D); \ 215#undef DEF_TRAVERSE_TMPL_INST 218#define ABSTRACT_DECL(DECL) 219#define DECL(CLASS, BASE) \ 220 bool Traverse##CLASS##Decl(CLASS##Decl *D) { \ 221 return Visitor.Traverse##CLASS##Decl(D); \ 223#include "clang/AST/DeclNodes.inc" 225#define DECL(CLASS, BASE) \ 226 bool Visit##CLASS##Decl(CLASS##Decl *D) { \ 227 return Visitor.Visit##CLASS##Decl(D); \ 229#include "clang/AST/DeclNodes.inc" 232#define ABSTRACT_STMT(STMT) 233#define STMT(CLASS, PARENT) \ 234 bool Traverse##CLASS(CLASS *S) { return Visitor.Traverse##CLASS(S); } 235#include "clang/AST/StmtNodes.inc" 237#define STMT(CLASS, PARENT) \ 238 bool Visit##CLASS(CLASS *S) { return Visitor.Visit##CLASS(S); } 239#include "clang/AST/StmtNodes.inc" 242#define ABSTRACT_TYPE(CLASS, BASE) 243#define TYPE(CLASS, BASE) \ 244 bool Traverse##CLASS##Type(CLASS##Type *T) { \ 245 return Visitor.Traverse##CLASS##Type(T); \ 247#include "clang/AST/TypeNodes.inc" 249#define TYPE(CLASS, BASE) \ 250 bool Visit##CLASS##Type(CLASS##Type *T) { \ 251 return Visitor.Visit##CLASS##Type(T); \ 253#include "clang/AST/TypeNodes.inc" 256#define ABSTRACT_TYPELOC(CLASS, BASE) 257#define TYPELOC(CLASS, BASE) \ 258 bool Traverse##CLASS##TypeLoc(CLASS##TypeLoc TL) { \ 259 return Visitor.Traverse##CLASS##TypeLoc(TL); \ 261#include "clang/AST/TypeLocNodes.def" 263#define TYPELOC(CLASS, BASE) \ 264 bool Visit##CLASS##TypeLoc(CLASS##TypeLoc TL) { \ 265 return Visitor.Visit##CLASS##TypeLoc(TL); \ 267#include "clang/AST/TypeLocNodes.def" 279#define FORWARD_TO_BASE(Function, Type, RefOrPointer) \ 280 template <bool Const> \ 281 bool DynamicRecursiveASTVisitorBase<Const>::Function( \ 282 MaybeConst<Type> RefOrPointer Param) { \ 283 return Impl<Const>(*this).RecursiveASTVisitor<Impl<Const>>::Function( \ 284 const_cast<Type RefOrPointer>(Param)); \ 288#define FORWARD_TO_BASE_EXACT(Function, Type) \ 289 template <bool Const> \ 290 bool DynamicRecursiveASTVisitorBase<Const>::Function(Type Param) { \ 291 return Impl<Const>(*this).RecursiveASTVisitor<Impl<Const>>::Function( \ 305FORWARD_TO_BASE

(TraverseConceptTypeRequirement, concepts::TypeRequirement, *)

306FORWARD_TO_BASE

(TraverseConceptExprRequirement, concepts::ExprRequirement, *)

309

concepts::NestedRequirement, *)

323

template <

bool

Const>

327 return

Impl<Const>(*

this

)

328

.RecursiveASTVisitor<Impl<Const>>::TraverseLambdaCapture(

332template

<

bool

Const>

335 return

Impl<Const>(*this).RecursiveASTVisitor<Impl<Const>>::dataTraverseNode(

336 const_cast<Stmt

*

>

(S),

nullptr

);

340#define ABSTRACT_DECL(DECL) 341#define DECL(CLASS, BASE) \ 342 FORWARD_TO_BASE(Traverse##CLASS##Decl, CLASS##Decl, *) \ 343 FORWARD_TO_BASE(WalkUpFrom##CLASS##Decl, CLASS##Decl, *) 344#include "clang/AST/DeclNodes.inc" 347#define ABSTRACT_STMT(STMT) 348#define STMT(CLASS, PARENT) FORWARD_TO_BASE(Traverse##CLASS, CLASS, *) 349#include "clang/AST/StmtNodes.inc" 351#define STMT(CLASS, PARENT) FORWARD_TO_BASE(WalkUpFrom##CLASS, CLASS, *) 352#include "clang/AST/StmtNodes.inc" 355#define ABSTRACT_TYPE(CLASS, BASE) 356#define TYPE(CLASS, BASE) \ 357 FORWARD_TO_BASE(Traverse##CLASS##Type, CLASS##Type, *) \ 358 FORWARD_TO_BASE(WalkUpFrom##CLASS##Type, CLASS##Type, *) 359#include "clang/AST/TypeNodes.inc" 361#define ABSTRACT_TYPELOC(CLASS, BASE) 362#define TYPELOC(CLASS, BASE) \ 363 FORWARD_TO_BASE_EXACT(Traverse##CLASS##TypeLoc, CLASS##TypeLoc) 364#include "clang/AST/TypeLocNodes.def" 366#define TYPELOC(CLASS, BASE) \ 367 FORWARD_TO_BASE_EXACT(WalkUpFrom##CLASS##TypeLoc, CLASS##TypeLoc) 368#include "clang/AST/TypeLocNodes.def"

#define FORWARD_TO_BASE_EXACT(Function, Type)

#define FORWARD_TO_BASE(Function, Type, RefOrPointer)

#define DEF_TRAVERSE_TMPL_INST(kind)

Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...

Attr - This represents one attribute.

Represents a base class of a C++ class.

Represents a C++ base or member initializer.

Declaration of a class template.

A reference to a concept and its template args, as it appears in the code.

Decl - This represents one declaration (or definition), e.g.

Recursive AST visitor that supports extension via dynamic dispatch.

std::conditional_t< IsConst, const ASTNode, ASTNode > MaybeConst

virtual bool dataTraverseNode(MaybeConst< Stmt > *S)

This represents one expression.

Declaration of a template function.

Describes the capture of a variable or of this, or of a C++1y init-capture.

A C++ lambda expression, which produces a function object (of unspecified type) that can be invoked l...

A C++ nested-name-specifier augmented with source location information.

Represents a C++ nested name specifier, such as "\::std::vector<int>::".

A (possibly-)qualified type.

A class that does preorder or postorder depth-first traversal on the entire Clang AST and visits each...

bool TraverseStmt(Stmt *S, DataRecursionQueue *Queue=nullptr)

Recursively visit a statement or expression, by dispatching to Traverse*() based on the argument's dy...

bool TraverseTemplateArgument(const TemplateArgument &Arg)

Recursively visit a template argument and dispatch to the appropriate method for the argument type.

bool TraverseConceptRequirement(concepts::Requirement *R)

bool TraverseType(QualType T)

Recursively visit a type, by dispatching to Traverse*Type() based on the argument's getTypeClass() pr...

bool dataTraverseStmtPre(Stmt *S)

Invoked before visiting a statement or expression via data recursion.

bool TraverseObjCProtocolLoc(ObjCProtocolLoc ProtocolLoc)

Recursively visit an Objective-C protocol reference with location information.

bool TraverseConceptExprRequirement(concepts::ExprRequirement *R)

bool TraverseAST(ASTContext &AST)

Recursively visits an entire AST, starting from the TranslationUnitDecl.

bool shouldVisitTemplateInstantiations() const

Return whether this visitor should recurse into template instantiations.

bool TraverseTemplateArgumentLoc(const TemplateArgumentLoc &ArgLoc)

Recursively visit a template argument location and dispatch to the appropriate method for the argumen...

bool dataTraverseStmtPost(Stmt *S)

Invoked after visiting a statement or expression via data recursion.

bool TraverseNestedNameSpecifierLoc(NestedNameSpecifierLoc NNS)

Recursively visit a C++ nested-name-specifier with location information.

bool TraverseTemplateName(TemplateName Template)

Recursively visit a template name and dispatch to the appropriate method.

bool TraverseNestedNameSpecifier(NestedNameSpecifier *NNS)

Recursively visit a C++ nested-name-specifier.

bool shouldVisitImplicitCode() const

Return whether this visitor should recurse into implicit code, e.g., implicit constructors and destru...

bool TraverseConceptReference(ConceptReference *CR)

Recursively visit concept reference with location information.

bool dataTraverseNode(Stmt *S, DataRecursionQueue *Queue)

bool TraverseDecl(Decl *D)

Recursively visit a declaration, by dispatching to Traverse*Decl() based on the argument's dynamic ty...

bool TraverseTypeLoc(TypeLoc TL)

Recursively visit a type with location, by dispatching to Traverse*TypeLoc() based on the argument ty...

bool TraverseTypeConstraint(const TypeConstraint *C)

bool VisitTypeLoc(TypeLoc TL)

bool TraverseLambdaCapture(LambdaExpr *LE, const LambdaCapture *C, Expr *Init)

Recursively visit a lambda capture.

bool VisitConceptReference(ConceptReference *CR)

bool shouldTraversePostOrder() const

Return whether this visitor should traverse post-order.

bool shouldVisitLambdaBody() const

Return whether this visitor should recurse into lambda body.

bool TraverseAttr(Attr *At)

Recursively visit an attribute, by dispatching to Traverse*Attr() based on the argument's dynamic typ...

bool TraverseConceptNestedRequirement(concepts::NestedRequirement *R)

bool shouldWalkTypesOfTypeLocs() const

Return whether this visitor should recurse into the types of TypeLocs.

bool TraverseDeclarationNameInfo(DeclarationNameInfo NameInfo)

Recursively visit a name with its location information.

bool TraverseCXXBaseSpecifier(const CXXBaseSpecifier &Base)

Recursively visit a base specifier.

bool TraverseConceptTypeRequirement(concepts::TypeRequirement *R)

bool TraverseConstructorInitializer(CXXCtorInitializer *Init)

Recursively visit a constructor initializer.

Stmt - This represents one statement.

Location wrapper for a TemplateArgument.

Represents a template argument.

Represents a C++ template name within the type system.

Models the abbreviated syntax to constrain a template type parameter: template <convertible_to<string...

Base wrapper for a particular "section" of type source info.

The base class of the type hierarchy.

Declaration of a variable template.

A requires-expression requirement which queries the validity and properties of an expression ('simple...

A requires-expression requirement which is satisfied when a general constraint expression is satisfie...

A static requirement that can be used in a requires-expression to check properties of types and expre...

A requires-expression requirement which queries the existence of a type name or type template special...

The JSON file list parser is used to communicate input to InstallAPI.

const FunctionProtoType * T

DeclarationNameInfo - A collector data type for bundling together a DeclarationName and the correspon...


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4