|
internal::TrueMatcher | clang::ast_matchers::anything () |
| Matches any node.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isExpansionInMainFile, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, Stmt, TypeLoc)) |
| Matches AST nodes that were expanded within the main-file.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isExpansionInSystemHeader, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, Stmt, TypeLoc)) |
| Matches AST nodes that were expanded within system-header-files.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_REGEX (isExpansionInFileMatching, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, Stmt, TypeLoc), RegExp) |
| Matches AST nodes that were expanded within files whose name is partially matching a given regex.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (isExpandedFromMacro, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, Stmt, TypeLoc), std::string, MacroName) |
| Matches statements that are (transitively) expanded from the named macro.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isPublic, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, CXXBaseSpecifier)) |
| Matches public C++ declarations and C++ base specifers that specify public inheritance.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isProtected, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, CXXBaseSpecifier)) |
| Matches protected C++ declarations and C++ base specifers that specify protected inheritance.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isPrivate, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, CXXBaseSpecifier)) |
| Matches private C++ declarations and C++ base specifers that specify private inheritance.
|
|
| clang::ast_matchers::AST_MATCHER (FieldDecl, isBitField) |
| Matches non-static data members that are bit-fields.
|
|
| clang::ast_matchers::AST_MATCHER_P (FieldDecl, hasBitWidth, unsigned, Width) |
| Matches non-static data members that are bit-fields of the specified bit width.
|
|
| clang::ast_matchers::AST_MATCHER_P (FieldDecl, hasInClassInitializer, internal::Matcher< Expr >, InnerMatcher) |
| Matches non-static data members that have an in-class initializer.
|
|
| clang::ast_matchers::AST_MATCHER (FunctionDecl, isMain) |
| Determines whether the function is "main", which is the entry point into an executable program.
|
|
| clang::ast_matchers::AST_MATCHER_P (ClassTemplateSpecializationDecl, hasSpecializedTemplate, internal::Matcher< ClassTemplateDecl >, InnerMatcher) |
| Matches the specialized template of a specialization declaration.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isImplicit, AST_POLYMORPHIC_SUPPORTED_TYPES(Decl, Attr, LambdaCapture)) |
| Matches an entity that has been implicitly added by the compiler (e.g.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasAnyTemplateArgument, AST_POLYMORPHIC_SUPPORTED_TYPES(ClassTemplateSpecializationDecl, VarTemplateSpecializationDecl, FunctionDecl, TemplateSpecializationType), internal::Matcher< TemplateArgument >, InnerMatcher) |
| Matches templateSpecializationTypes, class template specializations, variable template specializations, and function template specializations that have at least one TemplateArgument matching the given InnerMatcher.
|
|
template<typename T > |
internal::Matcher< T > | clang::ast_matchers::traverse (TraversalKind TK, const internal::Matcher< T > &InnerMatcher) |
| Causes all nested matchers to be matched with the specified traversal kind.
|
|
template<typename T > |
internal::BindableMatcher< T > | clang::ast_matchers::traverse (TraversalKind TK, const internal::BindableMatcher< T > &InnerMatcher) |
|
template<typename... T> |
internal::TraversalWrapper< internal::VariadicOperatorMatcher< T... > > | clang::ast_matchers::traverse (TraversalKind TK, const internal::VariadicOperatorMatcher< T... > &InnerMatcher) |
|
template<template< typename ToArg, typename FromArg > class ArgumentAdapterT, typename T , typename ToTypes > |
internal::TraversalWrapper< internal::ArgumentAdaptingMatcherFuncAdaptor< ArgumentAdapterT, T, ToTypes > > | clang::ast_matchers::traverse (TraversalKind TK, const internal::ArgumentAdaptingMatcherFuncAdaptor< ArgumentAdapterT, T, ToTypes > &InnerMatcher) |
|
template<template< typename T, typename... P > class MatcherT, typename... P, typename ReturnTypesF > |
internal::TraversalWrapper< internal::PolymorphicMatcher< MatcherT, ReturnTypesF, P... > > | clang::ast_matchers::traverse (TraversalKind TK, const internal::PolymorphicMatcher< MatcherT, ReturnTypesF, P... > &InnerMatcher) |
|
template<typename... T> |
internal::Matcher< typename internal::GetClade< T... >::Type > | clang::ast_matchers::traverse (TraversalKind TK, const internal::MapAnyOfHelper< T... > &InnerMatcher) |
|
| clang::ast_matchers::AST_MATCHER_P (Expr, ignoringImplicit, internal::Matcher< Expr >, InnerMatcher) |
| Matches expressions that match InnerMatcher after any implicit AST nodes are stripped off.
|
|
| clang::ast_matchers::AST_MATCHER_P (Expr, ignoringImpCasts, internal::Matcher< Expr >, InnerMatcher) |
| Matches expressions that match InnerMatcher after any implicit casts are stripped off.
|
|
| clang::ast_matchers::AST_MATCHER_P (Expr, ignoringParenCasts, internal::Matcher< Expr >, InnerMatcher) |
| Matches expressions that match InnerMatcher after parentheses and casts are stripped off.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (QualType, ignoringParens, internal::Matcher< QualType >, InnerMatcher, 0) |
| Matches types that match InnerMatcher after any parens are stripped.
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (Expr, ignoringParens, internal::Matcher< Expr >, InnerMatcher, 1) |
| Overload ignoringParens for Expr .
|
|
| clang::ast_matchers::AST_MATCHER (Expr, isInstantiationDependent) |
| Matches expressions that are instantiation-dependent even if it is neither type- nor value-dependent.
|
|
| clang::ast_matchers::AST_MATCHER (Expr, isTypeDependent) |
| Matches expressions that are type-dependent because the template type is not yet instantiated.
|
|
| clang::ast_matchers::AST_MATCHER (Expr, isValueDependent) |
| Matches expression that are value-dependent because they contain a non-type template parameter.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P2 (hasTemplateArgument, AST_POLYMORPHIC_SUPPORTED_TYPES(ClassTemplateSpecializationDecl, VarTemplateSpecializationDecl, FunctionDecl, TemplateSpecializationType), unsigned, N, internal::Matcher< TemplateArgument >, InnerMatcher) |
| Matches templateSpecializationType, class template specializations, variable template specializations, and function template specializations where the n'th TemplateArgument matches the given InnerMatcher.
|
|
| 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 .
|
|
| clang::ast_matchers::AST_MATCHER_P (TemplateArgument, refersToType, internal::Matcher< QualType >, InnerMatcher) |
| Matches a TemplateArgument that refers to a certain type.
|
|
| clang::ast_matchers::AST_MATCHER_P (TemplateArgument, refersToTemplate, internal::Matcher< TemplateName >, InnerMatcher) |
| Matches a TemplateArgument that refers to a certain template.
|
|
| clang::ast_matchers::AST_MATCHER_P (TemplateArgument, refersToDeclaration, internal::Matcher< Decl >, InnerMatcher) |
| Matches a canonical TemplateArgument that refers to a certain declaration.
|
|
| clang::ast_matchers::AST_MATCHER_P (TemplateArgument, isExpr, internal::Matcher< Expr >, InnerMatcher) |
| Matches a sugar TemplateArgument that refers to a certain expression.
|
|
| clang::ast_matchers::AST_MATCHER (TemplateArgument, isIntegral) |
| Matches a TemplateArgument that is an integral value.
|
|
| clang::ast_matchers::AST_MATCHER_P (TemplateArgument, refersToIntegralType, internal::Matcher< QualType >, InnerMatcher) |
| Matches a TemplateArgument that refers to an integral type.
|
|
| clang::ast_matchers::AST_MATCHER_P (TemplateArgument, equalsIntegralValue, std::string, Value) |
| Matches a TemplateArgument of integral type with a given value.
|
|
| clang::ast_matchers::AST_MATCHER (CallExpr, usesADL) |
| Matches call expressions which were resolved using ADL.
|
|
| clang::ast_matchers::AST_MATCHER_P (InitListExpr, hasSyntacticForm, internal::Matcher< Expr >, InnerMatcher) |
| Matches the syntactic form of init list expressions (if expression have it).
|
|
| clang::ast_matchers::AST_MATCHER_P (ForStmt, hasIncrement, internal::Matcher< Stmt >, InnerMatcher) |
| Matches the increment statement of a for loop.
|
|
| clang::ast_matchers::AST_MATCHER_P (ForStmt, hasLoopInit, internal::Matcher< Stmt >, InnerMatcher) |
| Matches the initialization statement of a for loop.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXForRangeStmt, hasLoopVariable, internal::Matcher< VarDecl >, InnerMatcher) |
| Matches the initialization statement of a for loop.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXForRangeStmt, hasRangeInit, internal::Matcher< Expr >, InnerMatcher) |
| Matches the range initialization statement of a for loop.
|
|
| clang::ast_matchers::AST_MATCHER_P (DesignatedInitExpr, designatorCountIs, unsigned, N) |
| Matches designated initializer expressions that contain a specific number of designators.
|
|
template<typename T , typename... U> |
auto | clang::ast_matchers::mapAnyOf (internal::VariadicDynCastAllOfMatcher< T, U > const &...) |
| Matches any of the NodeMatchers with InnerMatchers nested within.
|
|
| clang::ast_matchers::AST_MATCHER_P (UnaryExprOrTypeTraitExpr, hasArgumentOfType, internal::Matcher< QualType >, InnerMatcher) |
| Matches unary expressions that have a specific type of argument.
|
|
| clang::ast_matchers::AST_MATCHER_P (UnaryExprOrTypeTraitExpr, ofKind, UnaryExprOrTypeTrait, Kind) |
| Matches unary expressions of a certain kind.
|
|
internal::BindableMatcher< Stmt > | clang::ast_matchers::alignOfExpr (const internal::Matcher< UnaryExprOrTypeTraitExpr > &InnerMatcher) |
| Same as unaryExprOrTypeTraitExpr, but only matching alignof.
|
|
internal::BindableMatcher< Stmt > | clang::ast_matchers::sizeOfExpr (const internal::Matcher< UnaryExprOrTypeTraitExpr > &InnerMatcher) |
| Same as unaryExprOrTypeTraitExpr, but only matching sizeof.
|
|
internal::Matcher< NamedDecl > | clang::ast_matchers::hasName (StringRef Name) |
| Matches NamedDecl nodes that have the specified name.
|
|
| clang::ast_matchers::AST_MATCHER_REGEX (NamedDecl, matchesName, RegExp) |
| Matches NamedDecl nodes whose fully qualified names contain a substring matched by the given RegExp.
|
|
internal::PolymorphicMatcher< internal::HasOverloadedOperatorNameMatcher, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXOperatorCallExpr, FunctionDecl), std::vector< std::string > > | clang::ast_matchers::hasOverloadedOperatorName (StringRef Name) |
| Matches overloaded operator names.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXDependentScopeMemberExpr, hasMemberName, std::string, N) |
| Matches template-dependent, but known, member names.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXDependentScopeMemberExpr, memberHasSameNameAsBoundNode, std::string, BindingID) |
| Matches template-dependent, but known, member names against an already-bound node.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasDependentName, AST_POLYMORPHIC_SUPPORTED_TYPES(DependentScopeDeclRefExpr, DependentNameType), std::string, N) |
| Matches the dependent name of a DependentScopeDeclRefExpr or DependentNameType.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (isDerivedFrom, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXRecordDecl, ObjCInterfaceDecl), internal::Matcher< NamedDecl >, Base) |
| Matches C++ classes that are directly or indirectly derived from a class matching Base , or Objective-C classes that directly or indirectly subclass a class matching Base .
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (isDerivedFrom, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXRecordDecl, ObjCInterfaceDecl), std::string, BaseName, 1) |
| Overloaded method as shortcut for isDerivedFrom(hasName(...)) .
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXRecordDecl, hasAnyBase, internal::Matcher< CXXBaseSpecifier >, BaseSpecMatcher) |
| Matches C++ classes that have a direct or indirect base matching BaseSpecMatcher .
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXRecordDecl, hasDirectBase, internal::Matcher< CXXBaseSpecifier >, BaseSpecMatcher) |
| Matches C++ classes that have a direct base matching BaseSpecMatcher .
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (isSameOrDerivedFrom, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXRecordDecl, ObjCInterfaceDecl), internal::Matcher< NamedDecl >, Base, 0) |
| Similar to isDerivedFrom() , but also matches classes that directly match Base .
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (isSameOrDerivedFrom, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXRecordDecl, ObjCInterfaceDecl), std::string, BaseName, 1) |
| Overloaded method as shortcut for isSameOrDerivedFrom(hasName(...)) .
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (isDirectlyDerivedFrom, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXRecordDecl, ObjCInterfaceDecl), internal::Matcher< NamedDecl >, Base, 0) |
| Matches C++ or Objective-C classes that are directly derived from a class matching Base .
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (isDirectlyDerivedFrom, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXRecordDecl, ObjCInterfaceDecl), std::string, BaseName, 1) |
| Overloaded method as shortcut for isDirectlyDerivedFrom(hasName(...)) .
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXRecordDecl, hasMethod, internal::Matcher< CXXMethodDecl >, InnerMatcher) |
| Matches the first method of a class or struct that satisfies InnerMatcher .
|
|
| clang::ast_matchers::AST_MATCHER (CXXRecordDecl, isLambda) |
| Matches the generated class of lambda expressions.
|
|
template<typename T > |
internal::Matcher< T > | clang::ast_matchers::findAll (const internal::Matcher< T > &Matcher) |
| Matches if the node or any descendant matches.
|
|
internal::PolymorphicMatcher< internal::HasDeclarationMatcher, void(internal::HasDeclarationSupportedTypes), internal::Matcher< Decl > > | clang::ast_matchers::hasDeclaration (const internal::Matcher< Decl > &InnerMatcher) |
| Matches a node if the declaration associated with that node matches the given matcher.
|
|
| clang::ast_matchers::AST_MATCHER_P (NamedDecl, hasUnderlyingDecl, internal::Matcher< NamedDecl >, InnerMatcher) |
| Matches a NamedDecl whose underlying declaration matches the given matcher.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXMemberCallExpr, on, internal::Matcher< Expr >, InnerMatcher) |
| Matches on the implicit object argument of a member call expression, after stripping off any parentheses or implicit casts.
|
|
| clang::ast_matchers::AST_MATCHER_P (ObjCMessageExpr, hasReceiverType, internal::Matcher< QualType >, InnerMatcher) |
| Matches on the receiver of an ObjectiveC Message expression.
|
|
| clang::ast_matchers::AST_MATCHER (ObjCMethodDecl, isClassMethod) |
| Returns true when the Objective-C method declaration is a class method.
|
|
| clang::ast_matchers::AST_MATCHER (ObjCMethodDecl, isInstanceMethod) |
| Returns true when the Objective-C method declaration is an instance method.
|
|
| clang::ast_matchers::AST_MATCHER (ObjCMessageExpr, isClassMessage) |
| Returns true when the Objective-C message is sent to a class.
|
|
| clang::ast_matchers::AST_MATCHER (ObjCMessageExpr, isInstanceMessage) |
| Returns true when the Objective-C message is sent to an instance.
|
|
| clang::ast_matchers::AST_MATCHER_P (ObjCMessageExpr, hasReceiver, internal::Matcher< Expr >, InnerMatcher) |
| Matches if the Objective-C message is sent to an instance, and the inner matcher matches on that instance.
|
|
| clang::ast_matchers::AST_MATCHER_P (ObjCMessageExpr, hasSelector, std::string, BaseName) |
| Matches when BaseName == Selector.getAsString()
|
|
| clang::ast_matchers::AST_MATCHER_REGEX (ObjCMessageExpr, matchesSelector, RegExp) |
| Matches ObjC selectors whose name contains a substring matched by the given RegExp.
|
|
| clang::ast_matchers::AST_MATCHER (ObjCMessageExpr, hasNullSelector) |
| Matches when the selector is the empty selector.
|
|
| clang::ast_matchers::AST_MATCHER (ObjCMessageExpr, hasUnarySelector) |
| Matches when the selector is a Unary Selector.
|
|
| clang::ast_matchers::AST_MATCHER (ObjCMessageExpr, hasKeywordSelector) |
| Matches when the selector is a keyword selector.
|
|
| clang::ast_matchers::AST_MATCHER_P (ObjCMessageExpr, numSelectorArgs, unsigned, N) |
| Matches when the selector has the specified number of arguments.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (callee, AST_POLYMORPHIC_SUPPORTED_TYPES(CallExpr, CXXFoldExpr), internal::Matcher< Stmt >, InnerMatcher, 0) |
| Matches if the call or fold expression's callee expression matches.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (callee, AST_POLYMORPHIC_SUPPORTED_TYPES(ObjCMessageExpr, CallExpr), internal::Matcher< Decl >, InnerMatcher, 1) |
| Matches 1) if the call expression's callee's declaration matches the given matcher; or 2) if the Obj-C message expression's callee's method declaration matches the given matcher.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (hasType, AST_POLYMORPHIC_SUPPORTED_TYPES(Expr, FriendDecl, TypedefNameDecl, ValueDecl, CXXBaseSpecifier), internal::Matcher< QualType >, InnerMatcher, 0) |
| Matches if the expression's or declaration's type matches a type matcher.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P_OVERLOAD (hasType, AST_POLYMORPHIC_SUPPORTED_TYPES(Expr, FriendDecl, ValueDecl, CXXBaseSpecifier, ObjCInterfaceDecl), internal::Matcher< Decl >, InnerMatcher, 1) |
| Overloaded to match the declaration of the expression's or value declaration's type.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasTypeLoc, AST_POLYMORPHIC_SUPPORTED_TYPES(BlockDecl, CXXBaseSpecifier, CXXCtorInitializer, CXXFunctionalCastExpr, CXXNewExpr, CXXTemporaryObjectExpr, CXXUnresolvedConstructExpr, CompoundLiteralExpr, DeclaratorDecl, ExplicitCastExpr, ObjCPropertyDecl, TemplateArgumentLoc, TypedefNameDecl), internal::Matcher< TypeLoc >, Inner) |
| Matches if the type location of a node matches the inner matcher.
|
|
| clang::ast_matchers::AST_MATCHER_P (QualType, asString, std::string, Name) |
| Matches if the matched type is represented by the given string.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (QualType, pointsTo, internal::Matcher< Decl >, InnerMatcher, 1) |
| Overloaded to match the pointee type's declaration.
|
|
| 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.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (QualType, hasCanonicalType, internal::Matcher< QualType >, InnerMatcher) |
| Matches QualTypes whose canonical type matches InnerMatcher.
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (QualType, references, internal::Matcher< Decl >, InnerMatcher, 1) |
| Overloaded to match the referenced type's declaration.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXMemberCallExpr, onImplicitObjectArgument, internal::Matcher< Expr >, InnerMatcher) |
| Matches on the implicit object argument of a member call expression.
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (CXXMemberCallExpr, thisPointerType, internal::Matcher< QualType >, InnerMatcher, 0) |
| Matches if the type of the expression's implicit object argument either matches the InnerMatcher, or is a pointer to a type that matches the InnerMatcher.
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (CXXMemberCallExpr, thisPointerType, internal::Matcher< Decl >, InnerMatcher, 1) |
| Overloaded to match the type's declaration.
|
|
| 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.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (throughUsingDecl, AST_POLYMORPHIC_SUPPORTED_TYPES(DeclRefExpr, UsingType), internal::Matcher< UsingShadowDecl >, Inner) |
| Matches if a node refers to a declaration through a specific using shadow declaration.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (DeclStmt, hasSingleDecl, internal::Matcher< Decl >, InnerMatcher) |
| Matches the Decl of a DeclStmt which has a single declaration.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER (VarDecl, isInitCapture) |
| Matches a variable serving as the implicit variable for a lambda init- capture.
|
|
| clang::ast_matchers::AST_MATCHER_P (LambdaExpr, forEachLambdaCapture, internal::Matcher< LambdaCapture >, InnerMatcher) |
| Matches each lambda capture in a lambda expression.
|
|
| clang::ast_matchers::AST_MATCHER (VarDecl, isStaticLocal) |
| Matches a static variable with local scope.
|
|
| clang::ast_matchers::AST_MATCHER (VarDecl, hasLocalStorage) |
| Matches a variable declaration that has function scope and is a non-static local variable.
|
|
| clang::ast_matchers::AST_MATCHER (VarDecl, hasGlobalStorage) |
| Matches a variable declaration that does not have local storage.
|
|
| clang::ast_matchers::AST_MATCHER (VarDecl, hasAutomaticStorageDuration) |
| Matches a variable declaration that has automatic storage duration.
|
|
| clang::ast_matchers::AST_MATCHER (VarDecl, hasStaticStorageDuration) |
| Matches a variable declaration that has static storage duration.
|
|
| clang::ast_matchers::AST_MATCHER (VarDecl, hasThreadStorageDuration) |
| Matches a variable declaration that has thread storage duration.
|
|
| 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.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (argumentCountIs, AST_POLYMORPHIC_SUPPORTED_TYPES(CallExpr, CXXConstructExpr, CXXUnresolvedConstructExpr, ObjCMessageExpr), unsigned, N) |
| Checks that a call expression or a constructor call expression has a specific number of arguments (including absent default arguments).
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (argumentCountAtLeast, AST_POLYMORPHIC_SUPPORTED_TYPES(CallExpr, CXXConstructExpr, CXXUnresolvedConstructExpr, ObjCMessageExpr), unsigned, N) |
| Checks that a call expression or a constructor call expression has at least the specified number of arguments (including absent default arguments).
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P2 (hasArgument, AST_POLYMORPHIC_SUPPORTED_TYPES(CallExpr, CXXConstructExpr, CXXUnresolvedConstructExpr, ObjCMessageExpr), unsigned, N, internal::Matcher< Expr >, InnerMatcher) |
| Matches the n'th argument of a call expression or a constructor call expression.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXFoldExpr, hasFoldInit, internal::Matcher< Expr >, InnerMacher) |
| Matches the operand that does not contain the parameter pack.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXFoldExpr, hasPattern, internal::Matcher< Expr >, InnerMacher) |
| Matches the operand that contains the parameter pack.
|
|
| clang::ast_matchers::AST_MATCHER (CXXFoldExpr, isRightFold) |
| Matches right-folding fold expressions.
|
|
| clang::ast_matchers::AST_MATCHER (CXXFoldExpr, isLeftFold) |
| Matches left-folding fold expressions.
|
|
| clang::ast_matchers::AST_MATCHER (CXXFoldExpr, isUnaryFold) |
| Matches unary fold expressions, i.e.
|
|
| clang::ast_matchers::AST_MATCHER (CXXFoldExpr, isBinaryFold) |
| Matches binary fold expressions, i.e.
|
|
| clang::ast_matchers::AST_MATCHER_P2 (InitListExpr, hasInit, unsigned, N, internal::Matcher< Expr >, InnerMatcher) |
| Matches the n'th item of an initializer list expression.
|
|
| clang::ast_matchers::AST_MATCHER_P (DeclStmt, declCountIs, unsigned, N) |
| Matches declaration statements that contain a specific number of declarations.
|
|
| clang::ast_matchers::AST_MATCHER_P2 (DeclStmt, containsDeclaration, unsigned, N, internal::Matcher< Decl >, InnerMatcher) |
| Matches the n'th declaration of a declaration statement.
|
|
| clang::ast_matchers::AST_MATCHER (CXXCatchStmt, isCatchAll) |
| Matches a C++ catch statement that has a catch-all handler.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXConstructorDecl, hasAnyConstructorInitializer, internal::Matcher< CXXCtorInitializer >, InnerMatcher) |
| Matches a constructor initializer.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXCtorInitializer, forField, internal::Matcher< FieldDecl >, InnerMatcher) |
| Matches the field declaration of a constructor initializer.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXCtorInitializer, withInitializer, internal::Matcher< Expr >, InnerMatcher) |
| Matches the initializer expression of a constructor initializer.
|
|
| 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).
|
|
| clang::ast_matchers::AST_MATCHER (CXXCtorInitializer, isBaseInitializer) |
| Matches a constructor initializer if it is initializing a base, as opposed to a member.
|
|
| clang::ast_matchers::AST_MATCHER (CXXCtorInitializer, isMemberInitializer) |
| Matches a constructor initializer if it is initializing a member, as opposed to a base.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasAnyArgument, AST_POLYMORPHIC_SUPPORTED_TYPES(CallExpr, CXXConstructExpr, CXXUnresolvedConstructExpr, ObjCMessageExpr), internal::Matcher< Expr >, InnerMatcher) |
| Matches any argument of a call expression or a constructor call expression, or an ObjC-message-send expression.
|
|
| clang::ast_matchers::AST_MATCHER_P (LambdaExpr, hasAnyCapture, internal::Matcher< LambdaCapture >, InnerMatcher) |
| Matches any capture in a lambda expression.
|
|
| clang::ast_matchers::AST_MATCHER_P (LambdaCapture, capturesVar, internal::Matcher< ValueDecl >, InnerMatcher) |
| Matches a LambdaCapture that refers to the specified VarDecl .
|
|
| clang::ast_matchers::AST_MATCHER (LambdaCapture, capturesThis) |
| Matches a LambdaCapture that refers to 'this'.
|
|
| clang::ast_matchers::AST_MATCHER (CXXConstructExpr, isListInitialization) |
| Matches a constructor call expression which uses list initialization.
|
|
| clang::ast_matchers::AST_MATCHER (CXXConstructExpr, requiresZeroInitialization) |
| Matches a constructor call expression which requires zero initialization.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P2 (hasParameter, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, ObjCMethodDecl, BlockDecl), unsigned, N, internal::Matcher< ParmVarDecl >, InnerMatcher) |
| Matches the n'th parameter of a function or an ObjC method declaration or a block.
|
|
| clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isExplicitObjectMemberFunction) |
| Matches if the given method declaration declares a member function with an explicit object parameter.
|
|
| 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.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P2 (forEachArgumentWithParamType, AST_POLYMORPHIC_SUPPORTED_TYPES(CallExpr, CXXConstructExpr), internal::Matcher< Expr >, ArgMatcher, internal::Matcher< QualType >, ParamMatcher) |
| Matches all arguments and their respective types for a CallExpr or CXXConstructExpr .
|
|
| clang::ast_matchers::AST_MATCHER_P (ParmVarDecl, isAtPosition, unsigned, N) |
| Matches the ParmVarDecl nodes that are at the N'th position in the parameter list.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasAnyParameter, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, ObjCMethodDecl, BlockDecl), internal::Matcher< ParmVarDecl >, InnerMatcher) |
| Matches any parameter of a function or an ObjC method declaration or a block.
|
|
| 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.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (forEachTemplateArgument, AST_POLYMORPHIC_SUPPORTED_TYPES(ClassTemplateSpecializationDecl, VarTemplateSpecializationDecl, FunctionDecl, TemplateSpecializationType), internal::Matcher< TemplateArgument >, InnerMatcher) |
| Matches templateSpecializationType, class template specialization, variable template specialization, and function template specialization nodes where the template argument matches the inner matcher.
|
|
| clang::ast_matchers::AST_MATCHER (FunctionDecl, isNoReturn) |
| Matches FunctionDecls that have a noreturn attribute.
|
|
| clang::ast_matchers::AST_MATCHER_P (FunctionDecl, returns, internal::Matcher< QualType >, InnerMatcher) |
| Matches the return type of a function declaration.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isExternC, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, VarDecl)) |
| Matches extern "C" function or variable declarations.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER (FunctionDecl, isDeleted) |
| Matches deleted function declarations.
|
|
| clang::ast_matchers::AST_MATCHER (FunctionDecl, isDefaulted) |
| Matches defaulted function declarations.
|
|
| clang::ast_matchers::AST_MATCHER (FunctionDecl, isWeak) |
| Matches weak function declarations.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (hasDynamicExceptionSpec, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, FunctionProtoType)) |
| Matches functions that have a dynamic exception specification.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isNoThrow, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, FunctionProtoType)) |
| Matches functions that have a non-throwing exception specification.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isConsteval, AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl, IfStmt)) |
| Matches consteval function declarations and if consteval/if ! consteval statements.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isConstexpr, AST_POLYMORPHIC_SUPPORTED_TYPES(VarDecl, FunctionDecl, IfStmt)) |
| Matches constexpr variable and function declarations, and if constexpr.
|
|
| clang::ast_matchers::AST_MATCHER (VarDecl, isConstinit) |
| Matches constinit variable declarations.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasInitStatement, AST_POLYMORPHIC_SUPPORTED_TYPES(IfStmt, SwitchStmt, CXXForRangeStmt), internal::Matcher< Stmt >, InnerMatcher) |
| Matches selection statements with initializer.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (IfStmt, hasThen, internal::Matcher< Stmt >, InnerMatcher) |
| Matches the then-statement of an if statement.
|
|
| clang::ast_matchers::AST_MATCHER_P (IfStmt, hasElse, internal::Matcher< Stmt >, InnerMatcher) |
| Matches the else-statement of an if statement.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (IfStmt, hasConditionVariableStatement, internal::Matcher< DeclStmt >, InnerMatcher) |
| Matches the condition variable statement in an if statement.
|
|
| clang::ast_matchers::AST_MATCHER_P (ArraySubscriptExpr, hasIndex, internal::Matcher< Expr >, InnerMatcher) |
| Matches the index expression of an array subscript expression.
|
|
| clang::ast_matchers::AST_MATCHER_P (ArraySubscriptExpr, hasBase, internal::Matcher< Expr >, InnerMatcher) |
| Matches the base expression of an array subscript expression.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasBody, AST_POLYMORPHIC_SUPPORTED_TYPES(DoStmt, ForStmt, WhileStmt, CXXForRangeStmt, FunctionDecl, CoroutineBodyStmt), internal::Matcher< Stmt >, InnerMatcher) |
| Matches a 'for', 'while', 'while' statement or a function or coroutine definition that has a given body.
|
|
| clang::ast_matchers::AST_MATCHER_P (FunctionDecl, hasAnyBody, internal::Matcher< Stmt >, InnerMatcher) |
| Matches a function declaration that has a given body present in the AST.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (CompoundStmt, statementCountIs, unsigned, N) |
| Checks that a compound statement contains a specific number of child statements.
|
|
template<typename ValueT > |
internal::PolymorphicMatcher< internal::ValueEqualsMatcher, void(internal::AllNodeBaseTypes), ValueT > | clang::ast_matchers::equals (const ValueT &Value) |
| Matches literals that are equal to the given value of type ValueT.
|
|
| 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, CXXOperatorCallExpr, CXXRewrittenBinaryOperator, CXXFoldExpr, UnaryOperator), std::string, Name) |
| Matches the operator Name of operator expressions and fold expressions (binary or unary).
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isAssignmentOperator, AST_POLYMORPHIC_SUPPORTED_TYPES(BinaryOperator, CXXOperatorCallExpr, CXXRewrittenBinaryOperator)) |
| Matches all kinds of assignment operators.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isComparisonOperator, AST_POLYMORPHIC_SUPPORTED_TYPES(BinaryOperator, CXXOperatorCallExpr, CXXRewrittenBinaryOperator)) |
| Matches comparison operators.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasLHS, AST_POLYMORPHIC_SUPPORTED_TYPES(BinaryOperator, CXXOperatorCallExpr, CXXRewrittenBinaryOperator, ArraySubscriptExpr, CXXFoldExpr), internal::Matcher< Expr >, InnerMatcher) |
| Matches the left hand side of binary operator expressions.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasRHS, AST_POLYMORPHIC_SUPPORTED_TYPES(BinaryOperator, CXXOperatorCallExpr, CXXRewrittenBinaryOperator, ArraySubscriptExpr, CXXFoldExpr), internal::Matcher< Expr >, InnerMatcher) |
| Matches the right hand side of binary operator expressions.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasEitherOperand, AST_POLYMORPHIC_SUPPORTED_TYPES(BinaryOperator, CXXOperatorCallExpr, CXXFoldExpr, CXXRewrittenBinaryOperator), internal::Matcher< Expr >, InnerMatcher) |
| Matches if either the left hand side or the right hand side of a binary operator or fold expression matches.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P2 (hasOperands, AST_POLYMORPHIC_SUPPORTED_TYPES(BinaryOperator, CXXOperatorCallExpr, CXXFoldExpr, CXXRewrittenBinaryOperator), internal::Matcher< Expr >, Matcher1, internal::Matcher< Expr >, Matcher2) |
| Matches if both matchers match with opposite sides of the binary operator or fold expression.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasUnaryOperand, AST_POLYMORPHIC_SUPPORTED_TYPES(UnaryOperator, CXXOperatorCallExpr), internal::Matcher< Expr >, InnerMatcher) |
| Matches if the operand of a unary operator matches.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (CastExpr, hasCastKind, CastKind, Kind) |
| Matches casts that has a given cast kind.
|
|
| clang::ast_matchers::AST_MATCHER_P (ExplicitCastExpr, hasDestinationType, internal::Matcher< QualType >, InnerMatcher) |
| Matches casts whose destination type matches a given matcher.
|
|
| clang::ast_matchers::AST_MATCHER_P (ImplicitCastExpr, hasImplicitDestinationType, internal::Matcher< QualType >, InnerMatcher) |
| Matches implicit casts whose destination type matches a given matcher.
|
|
| clang::ast_matchers::AST_MATCHER (TagDecl, isStruct) |
| Matches TagDecl object that are spelled with "struct.".
|
|
| clang::ast_matchers::AST_MATCHER (TagDecl, isUnion) |
| Matches TagDecl object that are spelled with "union.".
|
|
| clang::ast_matchers::AST_MATCHER (TagDecl, isClass) |
| Matches TagDecl object that are spelled with "class.".
|
|
| clang::ast_matchers::AST_MATCHER (TagDecl, isEnum) |
| Matches TagDecl object that are spelled with "enum.".
|
|
| clang::ast_matchers::AST_MATCHER_P (AbstractConditionalOperator, hasTrueExpression, internal::Matcher< Expr >, InnerMatcher) |
| Matches the true branch expression of a conditional operator.
|
|
| clang::ast_matchers::AST_MATCHER_P (AbstractConditionalOperator, hasFalseExpression, internal::Matcher< Expr >, InnerMatcher) |
| Matches the false branch expression of a conditional operator (binary or ternary).
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isDefinition, AST_POLYMORPHIC_SUPPORTED_TYPES(TagDecl, VarDecl, ObjCMethodDecl, FunctionDecl)) |
| Matches if a declaration has a body attached.
|
|
| clang::ast_matchers::AST_MATCHER (FunctionDecl, isVariadic) |
| Matches if a function declaration is variadic.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXMethodDecl, ofClass, internal::Matcher< CXXRecordDecl >, InnerMatcher) |
| Matches the class declaration that the given method declaration belongs to.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXMethodDecl, forEachOverridden, internal::Matcher< CXXMethodDecl >, InnerMatcher) |
| Matches each method overridden by the given method.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isVirtual, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXMethodDecl, CXXBaseSpecifier)) |
| Matches declarations of virtual methods and C++ base specifers that specify virtual inheritance.
|
|
| clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isVirtualAsWritten) |
| Matches if the given method declaration has an explicit "virtual".
|
|
| clang::ast_matchers::AST_MATCHER (CXXConstructorDecl, isInheritingConstructor) |
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isFinal, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXRecordDecl, CXXMethodDecl)) |
| Matches if the given method or class declaration is final.
|
|
| clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isPure) |
| Matches if the given method declaration is pure.
|
|
| clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isConst) |
| Matches if the given method declaration is const.
|
|
| clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isCopyAssignmentOperator) |
| Matches if the given method declaration declares a copy assignment operator.
|
|
| clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isMoveAssignmentOperator) |
| Matches if the given method declaration declares a move assignment operator.
|
|
| clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isOverride) |
| Matches if the given method declaration overrides another method.
|
|
| clang::ast_matchers::AST_MATCHER (CXXMethodDecl, isUserProvided) |
| Matches method declarations that are user-provided.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isArrow, AST_POLYMORPHIC_SUPPORTED_TYPES(MemberExpr, UnresolvedMemberExpr, CXXDependentScopeMemberExpr)) |
| Matches member expressions that are called with '->' as opposed to '.
|
|
| clang::ast_matchers::AST_MATCHER (QualType, isInteger) |
| Matches QualType nodes that are of integer type.
|
|
| clang::ast_matchers::AST_MATCHER (QualType, isUnsignedInteger) |
| Matches QualType nodes that are of unsigned integer type.
|
|
| clang::ast_matchers::AST_MATCHER (QualType, isSignedInteger) |
| Matches QualType nodes that are of signed integer type.
|
|
| clang::ast_matchers::AST_MATCHER (QualType, isAnyCharacter) |
| Matches QualType nodes that are of character type.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER (QualType, isConstQualified) |
| Matches QualType nodes that are const-qualified, i.e., that include "top-level" const.
|
|
| clang::ast_matchers::AST_MATCHER (QualType, isVolatileQualified) |
| Matches QualType nodes that are volatile-qualified, i.e., that include "top-level" volatile.
|
|
| clang::ast_matchers::AST_MATCHER (QualType, hasLocalQualifiers) |
| Matches QualType nodes that have local CV-qualifiers attached to the node, not hidden within a typedef.
|
|
| 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.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasObjectExpression, AST_POLYMORPHIC_SUPPORTED_TYPES(MemberExpr, UnresolvedMemberExpr, CXXDependentScopeMemberExpr), internal::Matcher< Expr >, InnerMatcher) |
| Matches a member expression where the object expression is matched by a given matcher.
|
|
| clang::ast_matchers::AST_MATCHER_P (BaseUsingDecl, hasAnyUsingShadowDecl, internal::Matcher< UsingShadowDecl >, InnerMatcher) |
| Matches any using shadow declaration.
|
|
| 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.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_FUNCTION (internal::Matcher< Decl >, isInstantiated) |
| Matches declarations that are template instantiations or are inside template instantiations.
|
|
| clang::ast_matchers::AST_MATCHER_FUNCTION (internal::Matcher< Stmt >, isInTemplateInstantiation) |
| Matches statements inside of a template instantiation.
|
|
| 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.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (QualifiedTypeLoc, hasUnqualifiedLoc, internal::Matcher< TypeLoc >, InnerMatcher) |
| Matches QualifiedTypeLoc s that have an unqualified TypeLoc matching InnerMatcher .
|
|
| clang::ast_matchers::AST_MATCHER_P (FunctionDecl, hasReturnTypeLoc, internal::Matcher< TypeLoc >, ReturnMatcher) |
| Matches a function declared with the specified return TypeLoc .
|
|
| clang::ast_matchers::AST_MATCHER_P (PointerTypeLoc, hasPointeeLoc, internal::Matcher< TypeLoc >, PointeeMatcher) |
| Matches pointer TypeLoc s that have a pointee TypeLoc matching PointeeMatcher .
|
|
| clang::ast_matchers::AST_MATCHER_P (ReferenceTypeLoc, hasReferentLoc, internal::Matcher< TypeLoc >, ReferentMatcher) |
| Matches reference TypeLoc s that have a referent TypeLoc matching ReferentMatcher .
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasAnyTemplateArgumentLoc, AST_POLYMORPHIC_SUPPORTED_TYPES(ClassTemplateSpecializationDecl, VarTemplateSpecializationDecl, FunctionDecl, DeclRefExpr, TemplateSpecializationTypeLoc), internal::Matcher< TemplateArgumentLoc >, InnerMatcher) |
| Matches template specialization TypeLoc s, class template specializations, variable template specializations, and function template specializations that have at least one TemplateArgumentLoc matching the given InnerMatcher .
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P2 (hasTemplateArgumentLoc, AST_POLYMORPHIC_SUPPORTED_TYPES(ClassTemplateSpecializationDecl, VarTemplateSpecializationDecl, FunctionDecl, DeclRefExpr, TemplateSpecializationTypeLoc), unsigned, Index, internal::Matcher< TemplateArgumentLoc >, InnerMatcher) |
| Matches template specialization TypeLoc s, class template specializations, variable template specializations, and function template specializations where the n'th TemplateArgumentLoc matches the given InnerMatcher .
|
|
| clang::ast_matchers::AST_MATCHER_P (ElaboratedTypeLoc, hasNamedTypeLoc, internal::Matcher< TypeLoc >, InnerMatcher) |
| Matches elaborated TypeLoc s that have a named TypeLoc matching InnerMatcher .
|
|
| clang::ast_matchers::AST_MATCHER (Type, booleanType) |
| Matches type bool .
|
|
| clang::ast_matchers::AST_MATCHER (Type, voidType) |
| Matches type void .
|
|
| clang::ast_matchers::AST_MATCHER (Type, realFloatingPointType) |
| Matches any real floating-point type (float, double, long double).
|
|
| clang::ast_matchers::AST_TYPELOC_TRAVERSE_MATCHER_DECL (hasElementType, getElement, AST_POLYMORPHIC_SUPPORTED_TYPES(ArrayType, ComplexType)) |
| Matches arrays and C99 complex types that have a specific element type.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER_P (hasSize, AST_POLYMORPHIC_SUPPORTED_TYPES(ConstantArrayType, StringLiteral), unsigned, N) |
| Matches nodes that have the specified size.
|
|
| clang::ast_matchers::AST_MATCHER_P (VariableArrayType, hasSizeExpr, internal::Matcher< Expr >, InnerMatcher) |
| Matches VariableArrayType nodes that have a specific size expression.
|
|
| clang::ast_matchers::AST_TYPELOC_TRAVERSE_MATCHER_DECL (hasValueType, getValue, AST_POLYMORPHIC_SUPPORTED_TYPES(AtomicType)) |
| Matches atomic types with a specific value type.
|
|
| 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.
|
|
| clang::ast_matchers::AST_TYPE_TRAVERSE_MATCHER (hasUnderlyingType, getUnderlyingType, AST_POLYMORPHIC_SUPPORTED_TYPES(DecltypeType, UsingType)) |
| Matches DecltypeType or UsingType nodes to find the underlying type.
|
|
| 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.
|
|
| clang::ast_matchers::AST_TYPELOC_TRAVERSE_MATCHER_DECL (pointee, getPointee, AST_POLYMORPHIC_SUPPORTED_TYPES(BlockPointerType, MemberPointerType, PointerType, ReferenceType, ObjCObjectPointerType)) |
| Narrows PointerType (and similar) matchers to those where the pointee matches a given matcher.
|
|
| clang::ast_matchers::AST_MATCHER_P (ElaboratedType, hasQualifier, internal::Matcher< NestedNameSpecifier >, InnerMatcher) |
| Matches ElaboratedTypes whose qualifier, a NestedNameSpecifier, matches InnerMatcher if the qualifier exists.
|
|
| clang::ast_matchers::AST_MATCHER_P (ElaboratedType, namesType, internal::Matcher< QualType >, InnerMatcher) |
| Matches ElaboratedTypes whose named type matches InnerMatcher .
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (DecayedType, hasDecayedType, internal::Matcher< QualType >, InnerType) |
| Matches the decayed type, whoes decayed type matches InnerMatcher .
|
|
| clang::ast_matchers::AST_MATCHER_P (Decl, hasDeclContext, internal::Matcher< Decl >, InnerMatcher) |
| Matches declarations whose declaration context, interpreted as a Decl, matches InnerMatcher .
|
|
| 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.
|
|
| 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.
|
|
| 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 .
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (NestedNameSpecifier, hasPrefix, internal::Matcher< NestedNameSpecifier >, InnerMatcher, 0) |
| Matches on the prefix of a NestedNameSpecifier .
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (NestedNameSpecifierLoc, hasPrefix, internal::Matcher< NestedNameSpecifierLoc >, InnerMatcher, 1) |
| Matches on the prefix of a NestedNameSpecifierLoc .
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (SwitchStmt, forEachSwitchCase, internal::Matcher< SwitchCase >, InnerMatcher) |
| Matches each case or default statement belonging to the given switch statement.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXConstructorDecl, forEachConstructorInitializer, internal::Matcher< CXXCtorInitializer >, InnerMatcher) |
| Matches each constructor initializer in a constructor definition.
|
|
| clang::ast_matchers::AST_MATCHER (CXXConstructorDecl, isCopyConstructor) |
| Matches constructor declarations that are copy constructors.
|
|
| clang::ast_matchers::AST_MATCHER (CXXConstructorDecl, isMoveConstructor) |
| Matches constructor declarations that are move constructors.
|
|
| clang::ast_matchers::AST_MATCHER (CXXConstructorDecl, isDefaultConstructor) |
| Matches constructor declarations that are default constructors.
|
|
| clang::ast_matchers::AST_MATCHER (CXXConstructorDecl, isDelegatingConstructor) |
| Matches constructors that delegate to another constructor.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isExplicit, AST_POLYMORPHIC_SUPPORTED_TYPES(CXXConstructorDecl, CXXConversionDecl, CXXDeductionGuideDecl)) |
| Matches constructor, conversion function, and deduction guide declarations that have an explicit specifier if this explicit specifier is resolved to true.
|
|
| clang::ast_matchers::AST_MATCHER_P (FunctionDecl, hasExplicitSpecifier, internal::Matcher< Expr >, InnerMatcher) |
| Matches the expression in an explicit specifier if present in the given declaration.
|
|
| clang::ast_matchers::AST_POLYMORPHIC_MATCHER (isInline, AST_POLYMORPHIC_SUPPORTED_TYPES(NamespaceDecl, FunctionDecl, VarDecl)) |
| Matches functions, variables and namespace declarations that are marked with the inline keyword.
|
|
| clang::ast_matchers::AST_MATCHER (NamespaceDecl, isAnonymous) |
| Matches anonymous namespace declarations.
|
|
| clang::ast_matchers::AST_MATCHER (Decl, isInStdNamespace) |
| Matches declarations in the namespace std , but not in nested namespaces.
|
|
| clang::ast_matchers::AST_MATCHER (Decl, isInAnonymousNamespace) |
| Matches declarations in an anonymous namespace.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (Decl, hasAttr, attr::Kind, AttrKind) |
| Matches declaration that has a given attribute.
|
|
| clang::ast_matchers::AST_MATCHER_P (ReturnStmt, hasReturnValue, internal::Matcher< Expr >, InnerMatcher) |
| Matches the return value expression of a return statement.
|
|
| 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.
|
|
| clang::ast_matchers::AST_MATCHER_P (BindingDecl, forDecomposition, internal::Matcher< ValueDecl >, InnerMatcher) |
| Matches the DecompositionDecl the binding belongs to.
|
|
| clang::ast_matchers::AST_MATCHER_P2 (DecompositionDecl, hasBinding, unsigned, N, internal::Matcher< BindingDecl >, InnerMatcher) |
| Matches the Nth binding of a DecompositionDecl.
|
|
| clang::ast_matchers::AST_MATCHER_P (DecompositionDecl, hasAnyBinding, internal::Matcher< BindingDecl >, InnerMatcher) |
| Matches any binding of a DecompositionDecl.
|
|
| clang::ast_matchers::AST_MATCHER_P (Stmt, forFunction, internal::Matcher< FunctionDecl >, InnerMatcher) |
| Matches declaration of the function the statement belongs to.
|
|
| clang::ast_matchers::AST_MATCHER_P (Stmt, forCallable, internal::Matcher< Decl >, InnerMatcher) |
| Matches declaration of the function, method, or block the statement belongs to.
|
|
| clang::ast_matchers::AST_MATCHER (NamedDecl, hasExternalFormalLinkage) |
| Matches a declaration that has external formal linkage.
|
|
| clang::ast_matchers::AST_MATCHER (ParmVarDecl, hasDefaultArgument) |
| Matches a declaration that has default arguments.
|
|
| clang::ast_matchers::AST_MATCHER (CXXNewExpr, isArray) |
| Matches array new expressions.
|
|
| clang::ast_matchers::AST_MATCHER_P2 (CXXNewExpr, hasPlacementArg, unsigned, Index, internal::Matcher< Expr >, InnerMatcher) |
| Matches placement new expression arguments.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXNewExpr, hasAnyPlacementArg, internal::Matcher< Expr >, InnerMatcher) |
| Matches any placement new expression arguments.
|
|
| clang::ast_matchers::AST_MATCHER_P (CXXNewExpr, hasArraySize, internal::Matcher< Expr >, InnerMatcher) |
| Matches array new expressions with a given array size.
|
|
| clang::ast_matchers::AST_MATCHER (CXXRecordDecl, hasDefinition) |
| Matches a class declaration that is defined.
|
|
| clang::ast_matchers::AST_MATCHER (EnumDecl, isScoped) |
| Matches C++11 scoped enum declaration.
|
|
| clang::ast_matchers::AST_MATCHER (FunctionDecl, hasTrailingReturn) |
| Matches a function declared with a trailing return type.
|
|
| clang::ast_matchers::AST_MATCHER_P (Expr, ignoringElidableConstructorCall, internal::Matcher< Expr >, InnerMatcher) |
| Matches expressions that match InnerMatcher that are possibly wrapped in an elidable constructor and other corresponding bookkeeping nodes.
|
|
| clang::ast_matchers::AST_MATCHER (OMPExecutableDirective, isStandaloneDirective) |
| Matches standalone OpenMP directives, i.e., directives that can't have a structured block.
|
|
| clang::ast_matchers::AST_MATCHER_P (OMPExecutableDirective, hasStructuredBlock, internal::Matcher< Stmt >, InnerMatcher) |
| Matches the structured-block of the OpenMP executable directive.
|
|
| clang::ast_matchers::AST_MATCHER_P (OMPExecutableDirective, hasAnyClause, internal::Matcher< OMPClause >, InnerMatcher) |
| Matches any clause in an OpenMP directive.
|
|
| clang::ast_matchers::AST_MATCHER (OMPDefaultClause, isNoneKind) |
| Matches if the OpenMP default clause has none kind specified.
|
|
| clang::ast_matchers::AST_MATCHER (OMPDefaultClause, isSharedKind) |
| Matches if the OpenMP default clause has shared kind specified.
|
|
| clang::ast_matchers::AST_MATCHER (OMPDefaultClause, isPrivateKind) |
| Matches if the OpenMP default clause has private kind specified.
|
|
| clang::ast_matchers::AST_MATCHER (OMPDefaultClause, isFirstPrivateKind) |
| Matches if the OpenMP default clause has firstprivate kind specified.
|
|
| clang::ast_matchers::AST_MATCHER_P (OMPExecutableDirective, isAllowedToContainClauseKind, OpenMPClauseKind, CKind) |
| Matches if the OpenMP directive is allowed to contain the specified OpenMP clause kind.
|
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (Decl, equalsNode, const Decl *, Other, 0) |
| Overloads for the equalsNode matcher.
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (Stmt, equalsNode, const Stmt *, Other, 1) |
| Matches if a node equals another node.
|
|
| clang::ast_matchers::AST_MATCHER_P_OVERLOAD (Type, equalsNode, const Type *, Other, 2) |
| Matches if a node equals another node.
|
|