clang  6.0.0svn
Classes | Namespaces | Functions | Variables
ASTMatchers.h File Reference
#include "clang/AST/ASTContext.h"
#include "clang/AST/DeclFriend.h"
#include "clang/AST/DeclObjC.h"
#include "clang/AST/DeclTemplate.h"
#include "clang/ASTMatchers/ASTMatchersInternal.h"
#include "clang/ASTMatchers/ASTMatchersMacros.h"
#include "llvm/Support/Regex.h"
#include <iterator>
Include dependency graph for ASTMatchers.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  clang::ast_matchers::BoundNodes
 Maps string IDs to AST nodes matched by parts of a matcher. More...
 

Namespaces

 clang
 Dataflow Directional Tag Classes.
 
 clang::ast_matchers
 

Typedefs

typedef internal::Matcher< Decl > clang::ast_matchers::DeclarationMatcher
 Types of matchers for the top-level classes in the AST class hierarchy. More...
 
typedef internal::Matcher< Stmt > clang::ast_matchers::StatementMatcher
 
typedef internal::Matcher< QualType > clang::ast_matchers::TypeMatcher
 
typedef internal::Matcher< TypeLoc > clang::ast_matchers::TypeLocMatcher
 
typedef internal::Matcher< NestedNameSpecifier > clang::ast_matchers::NestedNameSpecifierMatcher
 
typedef internal::Matcher< NestedNameSpecifierLoc > clang::ast_matchers::NestedNameSpecifierLocMatcher
 
typedef internal::Matcher< CXXCtorInitializer > clang::ast_matchers::CXXCtorInitializerMatcher
 

Functions

template<typename T >
internal::Matcher< T > clang::ast_matchers::id (StringRef ID, const internal::BindableMatcher< T > &InnerMatcher)
 If the provided matcher matches a node, binds the node to ID. More...
 
internal::TrueMatcher clang::ast_matchers::anything ()
 Matches any node. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isExpansionInMainFile, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, Stmt, TypeLoc))
 Matches AST nodes that were expanded within the main-file. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isExpansionInSystemHeader, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, Stmt, TypeLoc))
 Matches AST nodes that were expanded within system-header-files. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (isExpansionInFileMatching, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, Stmt, TypeLoc), std::string, RegExp)
 Matches AST nodes that were expanded within files whose name is partially matching a given regex. More...
 
 clang::ast_matchers::AST_MATCHER (Decl, isPublic)
 Matches public C++ declarations. More...
 
 clang::ast_matchers::AST_MATCHER (Decl, isProtected)
 Matches protected C++ declarations. More...
 
 clang::ast_matchers::AST_MATCHER (Decl, isPrivate)
 Matches private C++ declarations. More...
 
 clang::ast_matchers::AST_MATCHER (FieldDecl, isBitField)
 Matches non-static data members that are bit-fields. More...
 
 clang::ast_matchers::AST_MATCHER_P (FieldDecl, hasBitWidth, unsigned, Width)
 Matches non-static data members that are bit-fields of the specified bit width. More...
 
 clang::ast_matchers::AST_MATCHER_P (FieldDecl, hasInClassInitializer, internal::Matcher< Expr >, InnerMatcher)
 Matches non-static data members that have an in-class initializer. More...
 
 clang::ast_matchers::AST_MATCHER_P (ClassTemplateSpecializationDecl, hasSpecializedTemplate, internal::Matcher< ClassTemplateDecl >, InnerMatcher)
 Matches the specialized template of a specialization declaration. More...
 
 clang::ast_matchers::AST_MATCHER (Decl, isImplicit)
 Matches a declaration that has been implicitly added by the compiler (eg. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasAnyTemplateArgument, AST_POLYMORPHIC_SUPPORTED_TYPES(ClassTemplateSpecializationDecl, TemplateSpecializationType, FunctionDecl), internal::Matcher< TemplateArgument >, InnerMatcher)
 Matches classTemplateSpecializations, templateSpecializationType and functionDecl that have at least one TemplateArgument matching the given InnerMatcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (Expr, ignoringImplicit, ast_matchers::internal::Matcher< Expr >, InnerMatcher)
 Matches expressions that match InnerMatcher after any implicit AST nodes are stripped off. More...
 
 clang::ast_matchers::AST_MATCHER_P (Expr, ignoringImpCasts, internal::Matcher< Expr >, InnerMatcher)
 Matches expressions that match InnerMatcher after any implicit casts are stripped off. More...
 
 clang::ast_matchers::AST_MATCHER_P (Expr, ignoringParenCasts, internal::Matcher< Expr >, InnerMatcher)
 Matches expressions that match InnerMatcher after parentheses and casts are stripped off. More...
 
 clang::ast_matchers::AST_MATCHER_P (Expr, ignoringParenImpCasts, internal::Matcher< Expr >, InnerMatcher)
 Matches expressions that match InnerMatcher after implicit casts and parentheses are stripped off. More...
 
 clang::ast_matchers::AST_MATCHER_P (QualType, ignoringParens, internal::Matcher< QualType >, InnerMatcher)
 Matches types that match InnerMatcher after any parens are stripped. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P2 (hasTemplateArgument, AST_POLYMORPHIC_SUPPORTED_TYPES(ClassTemplateSpecializationDecl, TemplateSpecializationType, FunctionDecl), unsigned, N, internal::Matcher< TemplateArgument >, InnerMatcher)
 Matches classTemplateSpecializations, templateSpecializationType and functionDecl where the n'th TemplateArgument matches the given InnerMatcher. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (templateArgumentCountIs, AST_POLYMORPHIC_SUPPORTED_TYPES(ClassTemplateSpecializationDecl, TemplateSpecializationType), unsigned, N)
 Matches if the number of template arguments equals N. More...
 
 clang::ast_matchers::AST_MATCHER_P (TemplateArgument, refersToType, internal::Matcher< QualType >, InnerMatcher)
 Matches a TemplateArgument that refers to a certain type. More...
 
 clang::ast_matchers::AST_MATCHER_P (TemplateArgument, refersToTemplate, internal::Matcher< TemplateName >, InnerMatcher)
 Matches a TemplateArgument that refers to a certain template. More...
 
 clang::ast_matchers::AST_MATCHER_P (TemplateArgument, refersToDeclaration, internal::Matcher< Decl >, InnerMatcher)
 Matches a canonical TemplateArgument that refers to a certain declaration. More...
 
 clang::ast_matchers::AST_MATCHER_P (TemplateArgument, isExpr, internal::Matcher< Expr >, InnerMatcher)
 Matches a sugar TemplateArgument that refers to a certain expression. More...
 
 clang::ast_matchers::AST_MATCHER (TemplateArgument, isIntegral)
 Matches a TemplateArgument that is an integral value. More...
 
 clang::ast_matchers::AST_MATCHER_P (TemplateArgument, refersToIntegralType, internal::Matcher< QualType >, InnerMatcher)
 Matches a TemplateArgument that referes to an integral type. More...
 
 clang::ast_matchers::AST_MATCHER_P (TemplateArgument, equalsIntegralValue, std::string, Value)
 Matches a TemplateArgument of integral type with a given value. More...
 
 clang::ast_matchers::AST_MATCHER_P (InitListExpr, hasSyntacticForm, internal::Matcher< Expr >, InnerMatcher)
 Matches the syntactic form of init list expressions (if expression have it). More...
 
 clang::ast_matchers::AST_MATCHER_P (ForStmt, hasIncrement, internal::Matcher< Stmt >, InnerMatcher)
 Matches the increment statement of a for loop. More...
 
 clang::ast_matchers::AST_MATCHER_P (ForStmt, hasLoopInit, internal::Matcher< Stmt >, InnerMatcher)
 Matches the initialization statement of a for loop. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXForRangeStmt, hasLoopVariable, internal::Matcher< VarDecl >, InnerMatcher)
 Matches the initialization statement of a for loop. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXForRangeStmt, hasRangeInit, internal::Matcher< Expr >, InnerMatcher)
 Matches the range initialization statement of a for loop. More...
 
 clang::ast_matchers::AST_MATCHER_P (DesignatedInitExpr, designatorCountIs, unsigned, N)
 Matches designated initializer expressions that contain a specific number of designators. More...
 
 clang::ast_matchers::AST_MATCHER_P (UnaryExprOrTypeTraitExpr, hasArgumentOfType, internal::Matcher< QualType >, InnerMatcher)
 Matches unary expressions that have a specific type of argument. More...
 
 clang::ast_matchers::AST_MATCHER_P (UnaryExprOrTypeTraitExpr, ofKind, UnaryExprOrTypeTrait, Kind)
 Matches unary expressions of a certain kind. More...
 
internal::Matcher< Stmt > clang::ast_matchers::alignOfExpr (const internal::Matcher< UnaryExprOrTypeTraitExpr > &InnerMatcher)
 Same as unaryExprOrTypeTraitExpr, but only matching alignof. More...
 
internal::Matcher< Stmt > clang::ast_matchers::sizeOfExpr (const internal::Matcher< UnaryExprOrTypeTraitExpr > &InnerMatcher)
 Same as unaryExprOrTypeTraitExpr, but only matching sizeof. More...
 
internal::Matcher< NamedDecl > clang::ast_matchers::hasName (const std::string &Name)
 Matches NamedDecl nodes that have the specified name. More...
 
 clang::ast_matchers::AST_MATCHER_P (NamedDecl, matchesName, std::string, RegExp)
 Matches NamedDecl nodes whose fully qualified names contain a substring matched by the given RegExp. More...
 
internal::PolymorphicMatcherWithParam1< internal::HasOverloadedOperatorNameMatcher, StringRef, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXOperatorCallExpr, FunctionDecl)> clang::ast_matchers::hasOverloadedOperatorName (StringRef Name)
 Matches overloaded operator names. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXRecordDecl, isDerivedFrom, internal::Matcher< NamedDecl >, Base)
 Matches C++ classes that are directly or indirectly derived from a class matching Base. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (CXXRecordDecl, isDerivedFrom, std::string, BaseName, 1)
 Overloaded method as shortcut for isDerivedFrom(hasName(...)). More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (CXXRecordDecl, isSameOrDerivedFrom, internal::Matcher< NamedDecl >, Base, 0)
 Similar to isDerivedFrom(), but also matches classes that directly match Base. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (CXXRecordDecl, isSameOrDerivedFrom, std::string, BaseName, 1)
 Overloaded method as shortcut for isSameOrDerivedFrom(hasName(...)). More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXRecordDecl, hasMethod, internal::Matcher< CXXMethodDecl >, InnerMatcher)
 Matches the first method of a class or struct that satisfies InnerMatcher. More...
 
 clang::ast_matchers::AST_MATCHER (CXXRecordDecl, isLambda)
 Matches the generated class of lambda expressions. More...
 
template<typename T >
internal::Matcher< T > clang::ast_matchers::findAll (const internal::Matcher< T > &Matcher)
 Matches if the node or any descendant matches. More...
 
internal::PolymorphicMatcherWithParam1< internal::HasDeclarationMatcher, internal::Matcher< Decl >, void(internal::HasDeclarationSupportedTypes)> clang::ast_matchers::hasDeclaration (const internal::Matcher< Decl > &InnerMatcher)
 Matches a node if the declaration associated with that node matches the given matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (NamedDecl, hasUnderlyingDecl, internal::Matcher< NamedDecl >, InnerMatcher)
 Matches a NamedDecl whose underlying declaration matches the given matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXMemberCallExpr, on, internal::Matcher< Expr >, InnerMatcher)
 Matches on the implicit object argument of a member call expression. More...
 
 clang::ast_matchers::AST_MATCHER_P (ObjCMessageExpr, hasReceiverType, internal::Matcher< QualType >, InnerMatcher)
 Matches on the receiver of an ObjectiveC Message expression. More...
 
 clang::ast_matchers::AST_MATCHER_P (ObjCMessageExpr, hasSelector, std::string, BaseName)
 Matches when BaseName == Selector.getAsString() More...
 
 clang::ast_matchers::AST_MATCHER_P (ObjCMessageExpr, matchesSelector, std::string, RegExp)
 Matches ObjC selectors whose name contains a substring matched by the given RegExp. More...
 
 clang::ast_matchers::AST_MATCHER (ObjCMessageExpr, hasNullSelector)
 Matches when the selector is the empty selector. More...
 
 clang::ast_matchers::AST_MATCHER (ObjCMessageExpr, hasUnarySelector)
 Matches when the selector is a Unary Selector. More...
 
 clang::ast_matchers::AST_MATCHER (ObjCMessageExpr, hasKeywordSelector)
 Matches when the selector is a keyword selector. More...
 
 clang::ast_matchers::AST_MATCHER_P (ObjCMessageExpr, numSelectorArgs, unsigned, N)
 Matches when the selector has the specified number of arguments. More...
 
 clang::ast_matchers::AST_MATCHER_P (CallExpr, callee, internal::Matcher< Stmt >, InnerMatcher)
 Matches if the call expression's callee expression matches. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (CallExpr, callee, internal::Matcher< Decl >, InnerMatcher, 1)
 Matches if the call expression's callee's declaration matches the given matcher. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (hasType, AST_POLYMORPHIC_SUPPORTED_TYPES(Expr, TypedefNameDecl, ValueDecl), internal::Matcher< QualType >, InnerMatcher, 0)
 Matches if the expression's or declaration's type matches a type matcher. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (hasType, AST_POLYMORPHIC_SUPPORTED_TYPES(Expr, ValueDecl), internal::Matcher< Decl >, InnerMatcher, 1)
 Overloaded to match the declaration of the expression's or value declaration's type. More...
 
 clang::ast_matchers::AST_MATCHER_P (DeclaratorDecl, hasTypeLoc, internal::Matcher< TypeLoc >, Inner)
 Matches if the type location of the declarator decl's type matches the inner matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (QualType, asString, std::string, Name)
 Matches if the matched type is represented by the given string. More...
 
 clang::ast_matchers::AST_MATCHER_P (QualType, pointsTo, internal::Matcher< QualType >, InnerMatcher)
 Matches if the matched type is a pointer type and the pointee type matches the specified matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (QualType, pointsTo, internal::Matcher< Decl >, InnerMatcher, 1)
 Overloaded to match the pointee type's declaration. More...
 
 clang::ast_matchers::AST_MATCHER_P (Type, hasUnqualifiedDesugaredType, internal::Matcher< Type >, InnerMatcher)
 Matches if the matched type matches the unqualified desugared type of the matched node. More...
 
 clang::ast_matchers::AST_MATCHER_P (QualType, references, internal::Matcher< QualType >, InnerMatcher)
 Matches if the matched type is a reference type and the referenced type matches the specified matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (QualType, hasCanonicalType, internal::Matcher< QualType >, InnerMatcher)
 Matches QualTypes whose canonical type matches InnerMatcher. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (QualType, references, internal::Matcher< Decl >, InnerMatcher, 1)
 Overloaded to match the referenced type's declaration. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXMemberCallExpr, onImplicitObjectArgument, internal::Matcher< Expr >, InnerMatcher)
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (CXXMemberCallExpr, thisPointerType, internal::Matcher< QualType >, InnerMatcher, 0)
 Matches if the expression's type either matches the specified matcher, or is a pointer to a type that matches the InnerMatcher. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (CXXMemberCallExpr, thisPointerType, internal::Matcher< Decl >, InnerMatcher, 1)
 Overloaded to match the type's declaration. More...
 
 clang::ast_matchers::AST_MATCHER_P (DeclRefExpr, to, internal::Matcher< Decl >, InnerMatcher)
 Matches a DeclRefExpr that refers to a declaration that matches the specified matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (DeclRefExpr, throughUsingDecl, internal::Matcher< UsingShadowDecl >, InnerMatcher)
 Matches a DeclRefExpr that refers to a declaration through a specific using shadow declaration. More...
 
 clang::ast_matchers::AST_MATCHER_P (OverloadExpr, hasAnyDeclaration, internal::Matcher< Decl >, InnerMatcher)
 Matches an OverloadExpr if any of the declarations in the set of overloads matches the given matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (DeclStmt, hasSingleDecl, internal::Matcher< Decl >, InnerMatcher)
 Matches the Decl of a DeclStmt which has a single declaration. More...
 
 clang::ast_matchers::AST_MATCHER_P (VarDecl, hasInitializer, internal::Matcher< Expr >, InnerMatcher)
 Matches a variable declaration that has an initializer expression that matches the given matcher. More...
 
 clang::ast_matchers::AST_MATCHER (VarDecl, hasLocalStorage)
 Matches a variable declaration that has function scope and is a non-static local variable. More...
 
 clang::ast_matchers::AST_MATCHER (VarDecl, hasGlobalStorage)
 Matches a variable declaration that does not have local storage. More...
 
 clang::ast_matchers::AST_MATCHER (VarDecl, hasAutomaticStorageDuration)
 Matches a variable declaration that has automatic storage duration. More...
 
 clang::ast_matchers::AST_MATCHER (VarDecl, hasStaticStorageDuration)
 Matches a variable declaration that has static storage duration. More...
 
 clang::ast_matchers::AST_MATCHER (VarDecl, hasThreadStorageDuration)
 Matches a variable declaration that has thread storage duration. More...
 
 clang::ast_matchers::AST_MATCHER (VarDecl, isExceptionVariable)
 Matches a variable declaration that is an exception variable from a C++ catch block, or an Objective-C @catch statement. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (argumentCountIs, AST_POLYMORPHIC_SUPPORTED_TYPES(CallExpr, CXXConstructExpr, ObjCMessageExpr), unsigned, N)
 Checks that a call expression or a constructor call expression has a specific number of arguments (including absent default arguments). More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P2 (hasArgument, AST_POLYMORPHIC_SUPPORTED_TYPES(CallExpr, CXXConstructExpr, ObjCMessageExpr), unsigned, N, internal::Matcher< Expr >, InnerMatcher)
 Matches the n'th argument of a call expression or a constructor call expression. More...
 
 clang::ast_matchers::AST_MATCHER_P (DeclStmt, declCountIs, unsigned, N)
 Matches declaration statements that contain a specific number of declarations. More...
 
 clang::ast_matchers::AST_MATCHER_P2 (DeclStmt, containsDeclaration, unsigned, N, internal::Matcher< Decl >, InnerMatcher)
 Matches the n'th declaration of a declaration statement. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXConstructorDecl, hasAnyConstructorInitializer, internal::Matcher< CXXCtorInitializer >, InnerMatcher)
 Matches a C++ catch statement that has a catch-all handler. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXCtorInitializer, forField, internal::Matcher< FieldDecl >, InnerMatcher)
 Matches the field declaration of a constructor initializer. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXCtorInitializer, withInitializer, internal::Matcher< Expr >, InnerMatcher)
 Matches the initializer expression of a constructor initializer. More...
 
 clang::ast_matchers::AST_MATCHER (CXXCtorInitializer, isWritten)
 Matches a constructor initializer if it is explicitly written in code (as opposed to implicitly added by the compiler). More...
 
 clang::ast_matchers::AST_MATCHER (CXXCtorInitializer, isBaseInitializer)
 Matches a constructor initializer if it is initializing a base, as opposed to a member. More...
 
 clang::ast_matchers::AST_MATCHER (CXXCtorInitializer, isMemberInitializer)
 Matches a constructor initializer if it is initializing a member, as opposed to a base. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasAnyArgument, AST_POLYMORPHIC_SUPPORTED_TYPES(CallExpr, CXXConstructExpr), internal::Matcher< Expr >, InnerMatcher)
 Matches any argument of a call expression or a constructor call expression. More...
 
 clang::ast_matchers::AST_MATCHER (CXXConstructExpr, isListInitialization)
 Matches a constructor call expression which uses list initialization. More...
 
 clang::ast_matchers::AST_MATCHER (CXXConstructExpr, requiresZeroInitialization)
 Matches a constructor call expression which requires zero initialization. More...
 
 clang::ast_matchers::AST_MATCHER_P2 (FunctionDecl, hasParameter, unsigned, N, internal::Matcher< ParmVarDecl >, InnerMatcher)
 Matches the n'th parameter of a function declaration. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P2 (forEachArgumentWithParam, AST_POLYMORPHIC_SUPPORTED_TYPES(CallExpr, CXXConstructExpr), internal::Matcher< Expr >, ArgMatcher, internal::Matcher< ParmVarDecl >, ParamMatcher)
 Matches all arguments and their respective ParmVarDecl. More...
 
 clang::ast_matchers::AST_MATCHER_P (FunctionDecl, hasAnyParameter, internal::Matcher< ParmVarDecl >, InnerMatcher)
 Matches any parameter of a function declaration. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (parameterCountIs, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, FunctionProtoType), unsigned, N)
 Matches FunctionDecls and FunctionProtoTypes that have a specific parameter count. More...
 
 clang::ast_matchers::AST_MATCHER_P (FunctionDecl, returns, internal::Matcher< QualType >, InnerMatcher)
 Matches the return type of a function declaration. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isExternC, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, VarDecl))
 Matches extern "C" function or variable declarations. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isStaticStorageClass, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, VarDecl))
 Matches variable/function declarations that have "static" storage class specifier ("static" keyword) written in the source. More...
 
 clang::ast_matchers::AST_MATCHER (FunctionDecl, isDeleted)
 Matches deleted function declarations. More...
 
 clang::ast_matchers::AST_MATCHER (FunctionDecl, isDefaulted)
 Matches defaulted function declarations. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (hasDynamicExceptionSpec, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, FunctionProtoType))
 Matches functions that have a dynamic exception specification. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isNoThrow, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, FunctionProtoType))
 Matches functions that have a non-throwing exception specification. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isConstexpr, AST_POLYMORPHIC_SUPPORTED_TYPES(VarDecl, FunctionDecl))
 Matches constexpr variable and function declarations. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasCondition, AST_POLYMORPHIC_SUPPORTED_TYPES(IfStmt, ForStmt, WhileStmt, DoStmt, SwitchStmt, AbstractConditionalOperator), internal::Matcher< Expr >, InnerMatcher)
 Matches the condition expression of an if statement, for loop, switch statement or conditional operator. More...
 
 clang::ast_matchers::AST_MATCHER_P (IfStmt, hasThen, internal::Matcher< Stmt >, InnerMatcher)
 Matches the then-statement of an if statement. More...
 
 clang::ast_matchers::AST_MATCHER_P (IfStmt, hasElse, internal::Matcher< Stmt >, InnerMatcher)
 Matches the else-statement of an if statement. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (equalsBoundNode, AST_POLYMORPHIC_SUPPORTED_TYPES(Stmt, Decl, Type, QualType), std::string, ID)
 Matches if a node equals a previously bound node. More...
 
 clang::ast_matchers::AST_MATCHER_P (IfStmt, hasConditionVariableStatement, internal::Matcher< DeclStmt >, InnerMatcher)
 Matches the condition variable statement in an if statement. More...
 
 clang::ast_matchers::AST_MATCHER_P (ArraySubscriptExpr, hasIndex, internal::Matcher< Expr >, InnerMatcher)
 Matches the index expression of an array subscript expression. More...
 
 clang::ast_matchers::AST_MATCHER_P (ArraySubscriptExpr, hasBase, internal::Matcher< Expr >, InnerMatcher)
 Matches the base expression of an array subscript expression. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasBody, AST_POLYMORPHIC_SUPPORTED_TYPES(DoStmt, ForStmt, WhileStmt, CXXForRangeStmt, FunctionDecl), internal::Matcher< Stmt >, InnerMatcher)
 Matches a 'for', 'while', 'do while' statement or a function definition that has a given body. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasAnySubstatement, AST_POLYMORPHIC_SUPPORTED_TYPES(CompoundStmt, StmtExpr), internal::Matcher< Stmt >, InnerMatcher)
 Matches compound statements where at least one substatement matches a given matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (CompoundStmt, statementCountIs, unsigned, N)
 Checks that a compound statement contains a specific number of child statements. More...
 
template<typename ValueT >
internal::PolymorphicMatcherWithParam1< internal::ValueEqualsMatcher, ValueT > clang::ast_matchers::equals (const ValueT &Value)
 Matches literals that are equal to the given value of type ValueT. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (equals, AST_POLYMORPHIC_SUPPORTED_TYPES(CharacterLiteral, CXXBoolLiteralExpr, IntegerLiteral), bool, Value, 0)
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (equals, AST_POLYMORPHIC_SUPPORTED_TYPES(CharacterLiteral, CXXBoolLiteralExpr, IntegerLiteral), unsigned, Value, 1)
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (equals, AST_POLYMORPHIC_SUPPORTED_TYPES(CharacterLiteral, CXXBoolLiteralExpr, FloatingLiteral, IntegerLiteral), double, Value, 2)
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasOperatorName, AST_POLYMORPHIC_SUPPORTED_TYPES(BinaryOperator, UnaryOperator), std::string, Name)
 Matches the operator Name of operator expressions (binary or unary). More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasLHS, AST_POLYMORPHIC_SUPPORTED_TYPES(BinaryOperator, ArraySubscriptExpr), internal::Matcher< Expr >, InnerMatcher)
 Matches the left hand side of binary operator expressions. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasRHS, AST_POLYMORPHIC_SUPPORTED_TYPES(BinaryOperator, ArraySubscriptExpr), internal::Matcher< Expr >, InnerMatcher)
 Matches the right hand side of binary operator expressions. More...
 
internal::Matcher< BinaryOperator > clang::ast_matchers::hasEitherOperand (const internal::Matcher< Expr > &InnerMatcher)
 Matches if either the left hand side or the right hand side of a binary operator matches. More...
 
 clang::ast_matchers::AST_MATCHER_P (UnaryOperator, hasUnaryOperand, internal::Matcher< Expr >, InnerMatcher)
 Matches if the operand of a unary operator matches. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasSourceExpression, AST_POLYMORPHIC_SUPPORTED_TYPES(CastExpr, OpaqueValueExpr), internal::Matcher< Expr >, InnerMatcher)
 Matches if the cast's source expression or opaque value's source expression matches the given matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (CastExpr, hasCastKind, CastKind, Kind)
 Matches casts that has a given cast kind. More...
 
 clang::ast_matchers::AST_MATCHER_P (ExplicitCastExpr, hasDestinationType, internal::Matcher< QualType >, InnerMatcher)
 Matches casts whose destination type matches a given matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (ImplicitCastExpr, hasImplicitDestinationType, internal::Matcher< QualType >, InnerMatcher)
 Matches implicit casts whose destination type matches a given matcher. More...
 
 clang::ast_matchers::AST_MATCHER (RecordDecl, isStruct)
 Matches RecordDecl object that are spelled with "struct.". More...
 
 clang::ast_matchers::AST_MATCHER (RecordDecl, isUnion)
 Matches RecordDecl object that are spelled with "union.". More...
 
 clang::ast_matchers::AST_MATCHER (RecordDecl, isClass)
 Matches RecordDecl object that are spelled with "class.". More...
 
 clang::ast_matchers::AST_MATCHER_P (AbstractConditionalOperator, hasTrueExpression, internal::Matcher< Expr >, InnerMatcher)
 Matches the true branch expression of a conditional operator. More...
 
 clang::ast_matchers::AST_MATCHER_P (AbstractConditionalOperator, hasFalseExpression, internal::Matcher< Expr >, InnerMatcher)
 Matches the false branch expression of a conditional operator (binary or ternary). More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isDefinition, AST_POLYMORPHIC_SUPPORTED_TYPES(TagDecl, VarDecl, FunctionDecl))
 Matches if a declaration has a body attached. More...
 
 clang::ast_matchers::AST_MATCHER (FunctionDecl, isVariadic)
 Matches if a function declaration is variadic. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXMethodDecl, ofClass, internal::Matcher< CXXRecordDecl >, InnerMatcher)
 Matches the class declaration that the given method declaration belongs to. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXMethodDecl, forEachOverridden, internal::Matcher< CXXMethodDecl >, InnerMatcher)
 Matches each method overriden by the given method. More...
 
 clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isVirtual)
 Matches if the given method declaration is virtual. More...
 
 clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isVirtualAsWritten)
 Matches if the given method declaration has an explicit "virtual". More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isFinal, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXRecordDecl, CXXMethodDecl))
 Matches if the given method or class declaration is final. More...
 
 clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isPure)
 Matches if the given method declaration is pure. More...
 
 clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isConst)
 Matches if the given method declaration is const. More...
 
 clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isCopyAssignmentOperator)
 Matches if the given method declaration declares a copy assignment operator. More...
 
 clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isMoveAssignmentOperator)
 Matches if the given method declaration declares a move assignment operator. More...
 
 clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isOverride)
 Matches if the given method declaration overrides another method. More...
 
 clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isUserProvided)
 Matches method declarations that are user-provided. More...
 
 clang::ast_matchers::AST_MATCHER (MemberExpr, isArrow)
 Matches member expressions that are called with '->' as opposed to '. More...
 
 clang::ast_matchers::AST_MATCHER (QualType, isInteger)
 Matches QualType nodes that are of integer type. More...
 
 clang::ast_matchers::AST_MATCHER (QualType, isUnsignedInteger)
 Matches QualType nodes that are of unsigned integer type. More...
 
 clang::ast_matchers::AST_MATCHER (QualType, isSignedInteger)
 Matches QualType nodes that are of signed integer type. More...
 
 clang::ast_matchers::AST_MATCHER (QualType, isAnyCharacter)
 Matches QualType nodes that are of character type. More...
 
 clang::ast_matchers::AST_MATCHER (QualType, isAnyPointer)
 Matches QualType nodes that are of any pointer type; this includes the Objective-C object pointer type, which is different despite being syntactically similar. More...
 
 clang::ast_matchers::AST_MATCHER (QualType, isConstQualified)
 Matches QualType nodes that are const-qualified, i.e., that include "top-level" const. More...
 
 clang::ast_matchers::AST_MATCHER (QualType, isVolatileQualified)
 Matches QualType nodes that are volatile-qualified, i.e., that include "top-level" volatile. More...
 
 clang::ast_matchers::AST_MATCHER (QualType, hasLocalQualifiers)
 Matches QualType nodes that have local CV-qualifiers attached to the node, not hidden within a typedef. More...
 
 clang::ast_matchers::AST_MATCHER_P (MemberExpr, member, internal::Matcher< ValueDecl >, InnerMatcher)
 Matches a member expression where the member is matched by a given matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (MemberExpr, hasObjectExpression, internal::Matcher< Expr >, InnerMatcher)
 Matches a member expression where the object expression is matched by a given matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (UsingDecl, hasAnyUsingShadowDecl, internal::Matcher< UsingShadowDecl >, InnerMatcher)
 Matches any using shadow declaration. More...
 
 clang::ast_matchers::AST_MATCHER_P (UsingShadowDecl, hasTargetDecl, internal::Matcher< NamedDecl >, InnerMatcher)
 Matches a using shadow declaration where the target declaration is matched by the given matcher. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isTemplateInstantiation, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, VarDecl, CXXRecordDecl))
 Matches template instantiations of function, class, or static member variable template instantiations. More...
 
 clang::ast_matchers::AST_MATCHER_FUNCTION (internal::Matcher< Decl >, isInstantiated)
 Matches declarations that are template instantiations or are inside template instantiations. More...
 
 clang::ast_matchers::AST_MATCHER_FUNCTION (internal::Matcher< Stmt >, isInTemplateInstantiation)
 Matches statements inside of a template instantiation. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isExplicitTemplateSpecialization, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, VarDecl, CXXRecordDecl))
 Matches explicit template specializations of function, class, or static member variable template instantiations. More...
 
 clang::ast_matchers::AST_MATCHER_FUNCTION_P_OVERLOAD (internal::BindableMatcher< TypeLoc >, loc, internal::Matcher< QualType >, InnerMatcher, 0)
 Matches TypeLocs for which the given inner QualType-matcher matches. More...
 
 clang::ast_matchers::AST_MATCHER (Type, booleanType)
 Matches type bool. More...
 
 clang::ast_matchers::AST_MATCHER (Type, voidType)
 Matches type void. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (BuiltinType, builtinType)
 Matches builtin Types. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (ArrayType, arrayType)
 Matches all kinds of arrays. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (ComplexType, complexType)
 Matches C99 complex types. More...
 
 clang::ast_matchers::AST_MATCHER (Type, realFloatingPointType)
 Matches any real floating-point type (float, double, long double). More...
 
 clang::ast_matchers::AST_TYPELOC_TRAVERSE_MATCHER (hasElementType, getElement, AST_POLYMORPHIC_SUPPORTED_TYPES(ArrayType, ComplexType))
 Matches arrays and C99 complex types that have a specific element type. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (ConstantArrayType, constantArrayType)
 Matches C arrays with a specified constant size. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasSize, AST_POLYMORPHIC_SUPPORTED_TYPES(ConstantArrayType, StringLiteral), unsigned, N)
 Matches nodes that have the specified size. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (DependentSizedArrayType, dependentSizedArrayType)
 Matches C++ arrays whose size is a value-dependent expression. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (IncompleteArrayType, incompleteArrayType)
 Matches C arrays with unspecified size. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (VariableArrayType, variableArrayType)
 Matches C arrays with a specified size that is not an integer-constant-expression. More...
 
 clang::ast_matchers::AST_MATCHER_P (VariableArrayType, hasSizeExpr, internal::Matcher< Expr >, InnerMatcher)
 Matches VariableArrayType nodes that have a specific size expression. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (AtomicType, atomicType)
 Matches atomic types. More...
 
 clang::ast_matchers::AST_TYPELOC_TRAVERSE_MATCHER (hasValueType, getValue, AST_POLYMORPHIC_SUPPORTED_TYPES(AtomicType))
 Matches atomic types with a specific value type. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (AutoType, autoType)
 Matches types nodes representing C++11 auto types. More...
 
 clang::ast_matchers::AST_TYPE_TRAVERSE_MATCHER (hasDeducedType, getDeducedType, AST_POLYMORPHIC_SUPPORTED_TYPES(AutoType))
 Matches AutoType nodes where the deduced type is a specific type. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (FunctionType, functionType)
 Matches FunctionType nodes. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (FunctionProtoType, functionProtoType)
 Matches FunctionProtoType nodes. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (ParenType, parenType)
 Matches ParenType nodes. More...
 
 clang::ast_matchers::AST_TYPE_TRAVERSE_MATCHER (innerType, getInnerType, AST_POLYMORPHIC_SUPPORTED_TYPES(ParenType))
 Matches ParenType nodes where the inner type is a specific type. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (BlockPointerType, blockPointerType)
 Matches block pointer types, i.e. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (MemberPointerType, memberPointerType)
 Matches member pointer types. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (PointerType, pointerType)
 Matches pointer types, but does not match Objective-C object pointer types. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (ObjCObjectPointerType, objcObjectPointerType)
 Matches an Objective-C object pointer type, which is different from a pointer type, despite being syntactically similar. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (ReferenceType, referenceType)
 Matches both lvalue and rvalue reference types. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (LValueReferenceType, lValueReferenceType)
 Matches lvalue reference types. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (RValueReferenceType, rValueReferenceType)
 Matches rvalue reference types. More...
 
 clang::ast_matchers::AST_TYPELOC_TRAVERSE_MATCHER (pointee, getPointee, AST_POLYMORPHIC_SUPPORTED_TYPES(BlockPointerType, MemberPointerType, PointerType, ReferenceType))
 Narrows PointerType (and similar) matchers to those where the pointee matches a given matcher. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (TypedefType, typedefType)
 Matches typedef types. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (EnumType, enumType)
 Matches enum types. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (TemplateSpecializationType, templateSpecializationType)
 Matches template specialization types. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (UnaryTransformType, unaryTransformType)
 Matches types nodes representing unary type transformations. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (RecordType, recordType)
 Matches record types (e.g. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (TagType, tagType)
 Matches tag types (record and enum types). More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (ElaboratedType, elaboratedType)
 Matches types specified with an elaborated type keyword or with a qualified name. More...
 
 clang::ast_matchers::AST_MATCHER_P (ElaboratedType, hasQualifier, internal::Matcher< NestedNameSpecifier >, InnerMatcher)
 Matches ElaboratedTypes whose qualifier, a NestedNameSpecifier, matches InnerMatcher if the qualifier exists. More...
 
 clang::ast_matchers::AST_MATCHER_P (ElaboratedType, namesType, internal::Matcher< QualType >, InnerMatcher)
 Matches ElaboratedTypes whose named type matches InnerMatcher. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (SubstTemplateTypeParmType, substTemplateTypeParmType)
 Matches types that represent the result of substituting a type for a template type parameter. More...
 
 clang::ast_matchers::AST_TYPE_TRAVERSE_MATCHER (hasReplacementType, getReplacementType, AST_POLYMORPHIC_SUPPORTED_TYPES(SubstTemplateTypeParmType))
 Matches template type parameter substitutions that have a replacement type that matches the provided matcher. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (TemplateTypeParmType, templateTypeParmType)
 Matches template type parameter types. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (InjectedClassNameType, injectedClassNameType)
 Matches injected class name types. More...
 
 clang::ast_matchers::AST_TYPE_MATCHER (DecayedType, decayedType)
 Matches decayed type Example matches i[] in declaration of f. More...
 
 clang::ast_matchers::AST_MATCHER_P (DecayedType, hasDecayedType, internal::Matcher< QualType >, InnerType)
 Matches the decayed type, whos decayed type matches InnerMatcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (Decl, hasDeclContext, internal::Matcher< Decl >, InnerMatcher)
 Matches declarations whose declaration context, interpreted as a Decl, matches InnerMatcher. More...
 
 clang::ast_matchers::AST_MATCHER_FUNCTION_P_OVERLOAD (internal::BindableMatcher< NestedNameSpecifierLoc >, loc, internal::Matcher< NestedNameSpecifier >, InnerMatcher, 1)
 Matches NestedNameSpecifierLocs for which the given inner NestedNameSpecifier-matcher matches. More...
 
 clang::ast_matchers::AST_MATCHER_P (NestedNameSpecifier, specifiesType, internal::Matcher< QualType >, InnerMatcher)
 Matches nested name specifiers that specify a type matching the given QualType matcher without qualifiers. More...
 
 clang::ast_matchers::AST_MATCHER_P (NestedNameSpecifierLoc, specifiesTypeLoc, internal::Matcher< TypeLoc >, InnerMatcher)
 Matches nested name specifier locs that specify a type matching the given TypeLoc. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (NestedNameSpecifier, hasPrefix, internal::Matcher< NestedNameSpecifier >, InnerMatcher, 0)
 Matches on the prefix of a NestedNameSpecifier. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (NestedNameSpecifierLoc, hasPrefix, internal::Matcher< NestedNameSpecifierLoc >, InnerMatcher, 1)
 Matches on the prefix of a NestedNameSpecifierLoc. More...
 
 clang::ast_matchers::AST_MATCHER_P (NestedNameSpecifier, specifiesNamespace, internal::Matcher< NamespaceDecl >, InnerMatcher)
 Matches nested name specifiers that specify a namespace matching the given namespace matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P (SwitchStmt, forEachSwitchCase, internal::Matcher< SwitchCase >, InnerMatcher)
 Matches each case or default statement belonging to the given switch statement. More...
 
 clang::ast_matchers::AST_MATCHER_P (CXXConstructorDecl, forEachConstructorInitializer, internal::Matcher< CXXCtorInitializer >, InnerMatcher)
 Matches each constructor initializer in a constructor definition. More...
 
 clang::ast_matchers::AST_MATCHER (CXXConstructorDecl, isCopyConstructor)
 Matches constructor declarations that are copy constructors. More...
 
 clang::ast_matchers::AST_MATCHER (CXXConstructorDecl, isMoveConstructor)
 Matches constructor declarations that are move constructors. More...
 
 clang::ast_matchers::AST_MATCHER (CXXConstructorDecl, isDefaultConstructor)
 Matches constructor declarations that are default constructors. More...
 
 clang::ast_matchers::AST_MATCHER (CXXConstructorDecl, isDelegatingConstructor)
 Matches constructors that delegate to another constructor. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isExplicit, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXConstructorDecl, CXXConversionDecl))
 Matches constructor and conversion declarations that are marked with the explicit keyword. More...
 
 clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isInline, AST_POLYMORPHIC_SUPPORTED_TYPES(NamespaceDecl, FunctionDecl))
 Matches function and namespace declarations that are marked with the inline keyword. More...
 
 clang::ast_matchers::AST_MATCHER (NamespaceDecl, isAnonymous)
 Matches anonymous namespace declarations. More...
 
 clang::ast_matchers::AST_MATCHER_P (CaseStmt, hasCaseConstant, internal::Matcher< Expr >, InnerMatcher)
 If the given case statement does not use the GNU case range extension, matches the constant given in the statement. More...
 
 clang::ast_matchers::AST_MATCHER_P (Decl, hasAttr, attr::Kind, AttrKind)
 Matches declaration that has a given attribute. More...
 
 clang::ast_matchers::AST_MATCHER_P (ReturnStmt, hasReturnValue, internal::Matcher< Expr >, InnerMatcher)
 Matches the return value expression of a return statement. More...
 
 clang::ast_matchers::AST_MATCHER_FUNCTION (internal::Matcher< Expr >, nullPointerConstant)
 Matches expressions that resolve to a null pointer constant, such as GNU's __null, C++11's nullptr, or C's NULL macro. More...
 
 clang::ast_matchers::AST_MATCHER_P (Stmt, forFunction, internal::Matcher< FunctionDecl >, InnerMatcher)
 Matches declaration of the function the statement belongs to. More...
 
 clang::ast_matchers::AST_MATCHER (NamedDecl, hasExternalFormalLinkage)
 Matches a declaration that has external formal linkage. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (Decl, equalsNode, const Decl *, Other, 0)
 Overloads for the equalsNode matcher. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (Stmt, equalsNode, const Stmt *, Other, 1)
 Matches if a node equals another node. More...
 
 clang::ast_matchers::AST_MATCHER_P_OVERLOAD (Type, equalsNode, const Type *, Other, 2)
 Matches if a node equals another node. More...
 

Variables

const internal::VariadicDynCastAllOfMatcher< Decl, TranslationUnitDecl > clang::ast_matchers::translationUnitDecl
 Matches the top declaration context. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, TypedefDecl > clang::ast_matchers::typedefDecl
 Matches typedef declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, TypedefNameDecl > clang::ast_matchers::typedefNameDecl
 Matches typedef name declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, TypeAliasDecl > clang::ast_matchers::typeAliasDecl
 Matches type alias declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, TypeAliasTemplateDecl > clang::ast_matchers::typeAliasTemplateDecl
 Matches type alias template declarations. More...
 
const internal::VariadicAllOfMatcher< Decl > clang::ast_matchers::decl
 Matches declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, LinkageSpecDecl > clang::ast_matchers::linkageSpecDecl
 Matches a declaration of a linkage specification. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, NamedDecl > clang::ast_matchers::namedDecl
 Matches a declaration of anything that could have a name. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, LabelDecl > clang::ast_matchers::labelDecl
 Matches a declaration of label. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, NamespaceDecl > clang::ast_matchers::namespaceDecl
 Matches a declaration of a namespace. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, NamespaceAliasDecl > clang::ast_matchers::namespaceAliasDecl
 Matches a declaration of a namespace alias. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, RecordDecl > clang::ast_matchers::recordDecl
 Matches class, struct, and union declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, CXXRecordDecl > clang::ast_matchers::cxxRecordDecl
 Matches C++ class declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ClassTemplateDecl > clang::ast_matchers::classTemplateDecl
 Matches C++ class template declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ClassTemplateSpecializationDecl > clang::ast_matchers::classTemplateSpecializationDecl
 Matches C++ class template specializations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, DeclaratorDecl > clang::ast_matchers::declaratorDecl
 Matches declarator declarations (field, variable, function and non-type template parameter declarations). More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ParmVarDecl > clang::ast_matchers::parmVarDecl
 Matches parameter variable declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, AccessSpecDecl > clang::ast_matchers::accessSpecDecl
 Matches C++ access specifier declarations. More...
 
const internal::VariadicAllOfMatcher< CXXCtorInitializer > clang::ast_matchers::cxxCtorInitializer
 Matches constructor initializers. More...
 
const internal::VariadicAllOfMatcher< TemplateArgument > clang::ast_matchers::templateArgument
 Matches template arguments. More...
 
const internal::VariadicAllOfMatcher< TemplateName > clang::ast_matchers::templateName
 Matches template name. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, NonTypeTemplateParmDecl > clang::ast_matchers::nonTypeTemplateParmDecl
 Matches non-type template parameter declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, TemplateTypeParmDecl > clang::ast_matchers::templateTypeParmDecl
 Matches template type parameter declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ValueDecl > clang::ast_matchers::valueDecl
 Matches any value declaration. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, CXXConstructorDecl > clang::ast_matchers::cxxConstructorDecl
 Matches C++ constructor declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, CXXDestructorDecl > clang::ast_matchers::cxxDestructorDecl
 Matches explicit C++ destructor declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, EnumDecl > clang::ast_matchers::enumDecl
 Matches enum declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, EnumConstantDecl > clang::ast_matchers::enumConstantDecl
 Matches enum constants. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, CXXMethodDecl > clang::ast_matchers::cxxMethodDecl
 Matches method declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, CXXConversionDecl > clang::ast_matchers::cxxConversionDecl
 Matches conversion operator declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, VarDecl > clang::ast_matchers::varDecl
 Matches variable declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, FieldDecl > clang::ast_matchers::fieldDecl
 Matches field declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, FunctionDecl > clang::ast_matchers::functionDecl
 Matches function declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, FunctionTemplateDecl > clang::ast_matchers::functionTemplateDecl
 Matches C++ function template declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, FriendDecl > clang::ast_matchers::friendDecl
 Matches friend declarations. More...
 
const internal::VariadicAllOfMatcher< Stmt > clang::ast_matchers::stmt
 Matches statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, DeclStmt > clang::ast_matchers::declStmt
 Matches declaration statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, MemberExpr > clang::ast_matchers::memberExpr
 Matches member expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CallExpr > clang::ast_matchers::callExpr
 Matches call expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, LambdaExpr > clang::ast_matchers::lambdaExpr
 Matches lambda expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXMemberCallExpr > clang::ast_matchers::cxxMemberCallExpr
 Matches member call expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ObjCMessageExpr > clang::ast_matchers::objcMessageExpr
 Matches ObjectiveC Message invocation expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ObjCInterfaceDecl > clang::ast_matchers::objcInterfaceDecl
 Matches Objective-C interface declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ObjCImplementationDecl > clang::ast_matchers::objcImplementationDecl
 Matches Objective-C implementation declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ObjCProtocolDecl > clang::ast_matchers::objcProtocolDecl
 Matches Objective-C protocol declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ObjCCategoryDecl > clang::ast_matchers::objcCategoryDecl
 Matches Objective-C category declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ObjCMethodDecl > clang::ast_matchers::objcMethodDecl
 Matches Objective-C method declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ObjCIvarDecl > clang::ast_matchers::objcIvarDecl
 Matches Objective-C instance variable declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, ObjCPropertyDecl > clang::ast_matchers::objcPropertyDecl
 Matches Objective-C property declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ExprWithCleanups > clang::ast_matchers::exprWithCleanups
 Matches expressions that introduce cleanups to be run at the end of the sub-expression's evaluation. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, InitListExpr > clang::ast_matchers::initListExpr
 Matches init list expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXStdInitializerListExpr > clang::ast_matchers::cxxStdInitializerListExpr
 Matches C++ initializer list expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ImplicitValueInitExpr > clang::ast_matchers::implicitValueInitExpr
 Matches implicit initializers of init list expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ParenListExpr > clang::ast_matchers::parenListExpr
 Matches paren list expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, SubstNonTypeTemplateParmExpr > clang::ast_matchers::substNonTypeTemplateParmExpr
 Matches substitutions of non-type template parameters. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, UsingDecl > clang::ast_matchers::usingDecl
 Matches using declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, UsingDirectiveDecl > clang::ast_matchers::usingDirectiveDecl
 Matches using namespace declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, UnresolvedLookupExpr > clang::ast_matchers::unresolvedLookupExpr
 Matches reference to a name that can be looked up during parsing but could not be resolved to a specific declaration. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, UnresolvedUsingValueDecl > clang::ast_matchers::unresolvedUsingValueDecl
 Matches unresolved using value declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, UnresolvedUsingTypenameDecl > clang::ast_matchers::unresolvedUsingTypenameDecl
 Matches unresolved using value declarations that involve the typename. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ParenExpr > clang::ast_matchers::parenExpr
 Matches parentheses used in expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXConstructExpr > clang::ast_matchers::cxxConstructExpr
 Matches constructor call expressions (including implicit ones). More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXUnresolvedConstructExpr > clang::ast_matchers::cxxUnresolvedConstructExpr
 Matches unresolved constructor call expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXThisExpr > clang::ast_matchers::cxxThisExpr
 Matches implicit and explicit this expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXBindTemporaryExpr > clang::ast_matchers::cxxBindTemporaryExpr
 Matches nodes where temporaries are created. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, MaterializeTemporaryExpr > clang::ast_matchers::materializeTemporaryExpr
 Matches nodes where temporaries are materialized. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXNewExpr > clang::ast_matchers::cxxNewExpr
 Matches new expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXDeleteExpr > clang::ast_matchers::cxxDeleteExpr
 Matches delete expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ArraySubscriptExpr > clang::ast_matchers::arraySubscriptExpr
 Matches array subscript expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXDefaultArgExpr > clang::ast_matchers::cxxDefaultArgExpr
 Matches the value of a default argument at the call site. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXOperatorCallExpr > clang::ast_matchers::cxxOperatorCallExpr
 Matches overloaded operator calls. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, Expr > clang::ast_matchers::expr
 Matches expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, DeclRefExpr > clang::ast_matchers::declRefExpr
 Matches expressions that refer to declarations. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, IfStmt > clang::ast_matchers::ifStmt
 Matches if statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ForStmt > clang::ast_matchers::forStmt
 Matches for statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXForRangeStmt > clang::ast_matchers::cxxForRangeStmt
 Matches range-based for statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, WhileStmt > clang::ast_matchers::whileStmt
 Matches while statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, DoStmt > clang::ast_matchers::doStmt
 Matches do statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, BreakStmt > clang::ast_matchers::breakStmt
 Matches break statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ContinueStmt > clang::ast_matchers::continueStmt
 Matches continue statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ReturnStmt > clang::ast_matchers::returnStmt
 Matches return statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, GotoStmt > clang::ast_matchers::gotoStmt
 Matches goto statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, LabelStmt > clang::ast_matchers::labelStmt
 Matches label statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, AddrLabelExpr > clang::ast_matchers::addrLabelExpr
 Matches address of label statements (GNU extension). More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, SwitchStmt > clang::ast_matchers::switchStmt
 Matches switch statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, SwitchCase > clang::ast_matchers::switchCase
 Matches case and default statements inside switch statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CaseStmt > clang::ast_matchers::caseStmt
 Matches case statements inside switch statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, DefaultStmt > clang::ast_matchers::defaultStmt
 Matches default statements inside switch statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CompoundStmt > clang::ast_matchers::compoundStmt
 Matches compound statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXCatchStmt > clang::ast_matchers::cxxCatchStmt
 Matches catch statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXTryStmt > clang::ast_matchers::cxxTryStmt
 Matches try statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXThrowExpr > clang::ast_matchers::cxxThrowExpr
 Matches throw expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, NullStmt > clang::ast_matchers::nullStmt
 Matches null statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, AsmStmt > clang::ast_matchers::asmStmt
 Matches asm statements. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXBoolLiteralExpr > clang::ast_matchers::cxxBoolLiteral
 Matches bool literals. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, StringLiteral > clang::ast_matchers::stringLiteral
 Matches string literals (also matches wide string literals). More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CharacterLiteral > clang::ast_matchers::characterLiteral
 Matches character literals (also matches wchar_t). More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, IntegerLiteral > clang::ast_matchers::integerLiteral
 Matches integer literals of all sizes / encodings, e.g. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, FloatingLiteral > clang::ast_matchers::floatLiteral
 Matches float literals of all sizes / encodings, e.g. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, UserDefinedLiteral > clang::ast_matchers::userDefinedLiteral
 Matches user defined literal operator call. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CompoundLiteralExpr > clang::ast_matchers::compoundLiteralExpr
 Matches compound (i.e. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXNullPtrLiteralExpr > clang::ast_matchers::cxxNullPtrLiteralExpr
 Matches nullptr literal. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, GNUNullExpr > clang::ast_matchers::gnuNullExpr
 Matches GNU __null expression. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, AtomicExpr > clang::ast_matchers::atomicExpr
 Matches atomic builtins. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, StmtExpr > clang::ast_matchers::stmtExpr
 Matches statement expression (GNU extension). More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, BinaryOperator > clang::ast_matchers::binaryOperator
 Matches binary operator expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, UnaryOperator > clang::ast_matchers::unaryOperator
 Matches unary operator expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ConditionalOperator > clang::ast_matchers::conditionalOperator
 Matches conditional operator expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, BinaryConditionalOperator > clang::ast_matchers::binaryConditionalOperator
 Matches binary conditional operator expressions (GNU extension). More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, OpaqueValueExpr > clang::ast_matchers::opaqueValueExpr
 Matches opaque value expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Decl, StaticAssertDecl > clang::ast_matchers::staticAssertDecl
 Matches a C++ static_assert declaration. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXReinterpretCastExpr > clang::ast_matchers::cxxReinterpretCastExpr
 Matches a reinterpret_cast expression. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXStaticCastExpr > clang::ast_matchers::cxxStaticCastExpr
 Matches a C++ static_cast expression. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXDynamicCastExpr > clang::ast_matchers::cxxDynamicCastExpr
 Matches a dynamic_cast expression. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXConstCastExpr > clang::ast_matchers::cxxConstCastExpr
 Matches a const_cast expression. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CStyleCastExpr > clang::ast_matchers::cStyleCastExpr
 Matches a C-style cast expression. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ExplicitCastExpr > clang::ast_matchers::explicitCastExpr
 Matches explicit cast expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, ImplicitCastExpr > clang::ast_matchers::implicitCastExpr
 Matches the implicit cast nodes of Clang's AST. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CastExpr > clang::ast_matchers::castExpr
 Matches any cast nodes of Clang's AST. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXFunctionalCastExpr > clang::ast_matchers::cxxFunctionalCastExpr
 Matches functional cast expressions. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CXXTemporaryObjectExpr > clang::ast_matchers::cxxTemporaryObjectExpr
 Matches functional cast expressions having N != 1 arguments. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, PredefinedExpr > clang::ast_matchers::predefinedExpr
 Matches predefined identifier expressions [C99 6.4.2.2]. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, DesignatedInitExpr > clang::ast_matchers::designatedInitExpr
 Matches C99 designated initializer expressions [C99 6.7.8]. More...
 
const internal::VariadicAllOfMatcher< QualType > clang::ast_matchers::qualType
 Matches QualTypes in the clang AST. More...
 
const internal::VariadicAllOfMatcher< Type > clang::ast_matchers::type
 Matches Types in the clang AST. More...
 
const internal::VariadicAllOfMatcher< TypeLoc > clang::ast_matchers::typeLoc
 Matches TypeLocs in the clang AST. More...
 
const internal::VariadicOperatorMatcherFunc< 2, UINT_MAXclang::ast_matchers::eachOf
 Matches if any of the given matchers matches. More...
 
const internal::VariadicOperatorMatcherFunc< 2, UINT_MAXclang::ast_matchers::anyOf
 Matches if any of the given matchers matches. More...
 
const internal::VariadicOperatorMatcherFunc< 2, UINT_MAXclang::ast_matchers::allOf
 Matches if all given matchers match. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, UnaryExprOrTypeTraitExpr > clang::ast_matchers::unaryExprOrTypeTraitExpr
 Matches sizeof (C99), alignof (C++11) and vec_step (OpenCL) More...
 
const internal::VariadicFunction< internal::Matcher< NamedDecl >, StringRef, internal::hasAnyNameFunc > clang::ast_matchers::hasAnyName = {}
 Matches NamedDecl nodes that have any of the specified names. More...
 
const internal::ArgumentAdaptingMatcherFunc< internal::HasMatcher > LLVM_ATTRIBUTE_UNUSED clang::ast_matchers::has = {}
 Matches AST nodes that have child AST nodes that match the provided matcher. More...
 
const internal::ArgumentAdaptingMatcherFunc< internal::HasDescendantMatcher > LLVM_ATTRIBUTE_UNUSED clang::ast_matchers::hasDescendant = {}
 Matches AST nodes that have descendant AST nodes that match the provided matcher. More...
 
const internal::ArgumentAdaptingMatcherFunc< internal::ForEachMatcher > LLVM_ATTRIBUTE_UNUSED clang::ast_matchers::forEach = {}
 Matches AST nodes that have child AST nodes that match the provided matcher. More...
 
const internal::ArgumentAdaptingMatcherFunc< internal::ForEachDescendantMatcher > LLVM_ATTRIBUTE_UNUSED clang::ast_matchers::forEachDescendant = {}
 Matches AST nodes that have descendant AST nodes that match the provided matcher. More...
 
const internal::ArgumentAdaptingMatcherFunc< internal::HasParentMatcher, internal::TypeList< Decl, NestedNameSpecifierLoc, Stmt, TypeLoc >, internal::TypeList< Decl, NestedNameSpecifierLoc, Stmt, TypeLoc > > LLVM_ATTRIBUTE_UNUSED clang::ast_matchers::hasParent = {}
 Matches AST nodes that have a parent that matches the provided matcher. More...
 
const internal::ArgumentAdaptingMatcherFunc< internal::HasAncestorMatcher, internal::TypeList< Decl, NestedNameSpecifierLoc, Stmt, TypeLoc >, internal::TypeList< Decl, NestedNameSpecifierLoc, Stmt, TypeLoc > > LLVM_ATTRIBUTE_UNUSED clang::ast_matchers::hasAncestor = {}
 Matches AST nodes that have an ancestor that matches the provided matcher. More...
 
const internal::VariadicOperatorMatcherFunc< 1, 1 > clang::ast_matchers::unless
 Matches if the provided matcher does not match. More...
 
const internal::VariadicAllOfMatcher< NestedNameSpecifier > clang::ast_matchers::nestedNameSpecifier
 Matches nested name specifiers. More...
 
const internal::VariadicAllOfMatcher< NestedNameSpecifierLoc > clang::ast_matchers::nestedNameSpecifierLoc
 Same as nestedNameSpecifier but matches NestedNameSpecifierLoc. More...
 
const internal::VariadicDynCastAllOfMatcher< Stmt, CUDAKernelCallExpr > clang::ast_matchers::cudaKernelCallExpr
 Matches CUDA kernel call expression. More...