Lines Matching defs:Matcher

113 internal::Matcher<T> id(const std::string &ID,
121 typedef internal::Matcher<Decl> DeclarationMatcher;
122 typedef internal::Matcher<Stmt> StatementMatcher;
123 typedef internal::Matcher<QualType> TypeMatcher;
124 typedef internal::Matcher<TypeLoc> TypeLocMatcher;
125 typedef internal::Matcher<NestedNameSpecifier> NestedNameSpecifierMatcher;
126 typedef internal::Matcher<NestedNameSpecifierLoc> NestedNameSpecifierLocMatcher;
133 /// to an \c internal::Matcher<> type such as \c TypeMatcher.
142 /// Usable as: Any Matcher
336 internal::Matcher<TemplateArgument>, InnerMatcher) {
369 internal::Matcher<Expr>, InnerMatcher) {
390 AST_MATCHER_P(Expr, ignoringParenCasts, internal::Matcher<Expr>, InnerMatcher) {
416 internal::Matcher<Expr>, InnerMatcher) {
436 unsigned, N, internal::Matcher<TemplateArgument>, InnerMatcher) {
456 internal::Matcher<QualType>, InnerMatcher) {
476 internal::Matcher<Decl>, InnerMatcher) {
494 AST_MATCHER_P(TemplateArgument, isExpr, internal::Matcher<Expr>, InnerMatcher) {
909 AST_MATCHER_P(ForStmt, hasIncrement, internal::Matcher<Stmt>,
924 AST_MATCHER_P(ForStmt, hasLoopInit, internal::Matcher<Stmt>,
947 AST_MATCHER_P(CXXForRangeStmt, hasLoopVariable, internal::Matcher<VarDecl>,
961 AST_MATCHER_P(CXXForRangeStmt, hasRangeInit, internal::Matcher<Expr>,
1403 /// Usable as: Any Matcher
1410 /// Usable as: Any Matcher
1417 /// Usable as: Any Matcher
1444 internal::Matcher<QualType>, InnerMatcher) {
1464 inline internal::Matcher<Stmt> alignOfExpr(
1465 const internal::Matcher<UnaryExprOrTypeTraitExpr> &InnerMatcher) {
1472 inline internal::Matcher<Stmt> sizeOfExpr(
1473 const internal::Matcher<UnaryExprOrTypeTraitExpr> &InnerMatcher) {
1545 /// Usable as: Matcher<CXXOperatorCallExpr>, Matcher<CXXMethodDecl>
1578 internal::Matcher<NamedDecl>, Base) {
1591 internal::Matcher<NamedDecl>, Base, 0) {
1592 return Matcher<CXXRecordDecl>(anyOf(Base, isDerivedFrom(Base)))
1615 AST_MATCHER_P(CXXRecordDecl, hasMethod, internal::Matcher<CXXMethodDecl>,
1633 /// Usable as: Any Matcher
1650 /// Usable as: Any Matcher
1669 /// Usable as: Any Matcher
1696 /// Usable as: Any Matcher
1714 /// Usable as: Any Matcher
1716 internal::Matcher<T> findAll(const internal::Matcher<T> &Matcher) {
1717 return eachOf(Matcher, forEachDescendant(Matcher));
1729 /// Usable as: Any Matcher
1744 /// Usable as: Any Matcher
1757 /// Usable as: Any Matcher
1771 /// Also usable as Matcher<T> for any T supporting the getDecl() member
1774 /// Usable as: Matcher<CallExpr>, Matcher<CXXConstructExpr>,
1775 /// Matcher<DeclRefExpr>, Matcher<EnumType>, Matcher<InjectedClassNameType>,
1776 /// Matcher<LabelStmt>, Matcher<MemberExpr>, Matcher<QualType>,
1777 /// Matcher<RecordType>, Matcher<TagType>,
1778 /// Matcher<TemplateSpecializationType>, Matcher<TemplateTypeParmType>,
1779 /// Matcher<TypedefType>, Matcher<UnresolvedUsingType>
1781 internal::HasDeclarationMatcher, internal::Matcher<Decl>,
1783 hasDeclaration(const internal::Matcher<Decl> &InnerMatcher) {
1785 internal::HasDeclarationMatcher, internal::Matcher<Decl>,
1798 AST_MATCHER_P(CXXMemberCallExpr, on, internal::Matcher<Expr>,
1818 /// Note: Callee cannot take the more general internal::Matcher<Expr>
1820 /// internal::Matcher<Decl>, as the matcher hierarchy is purely
1822 AST_MATCHER_P(CallExpr, callee, internal::Matcher<Stmt>,
1837 AST_MATCHER_P_OVERLOAD(CallExpr, callee, internal::Matcher<Decl>, InnerMatcher,
1853 internal::Matcher<QualType>, InnerMatcher, 0) {
1873 /// Usable as: Matcher<Expr>, Matcher<ValueDecl>
1876 internal::Matcher<Decl>, InnerMatcher, 1) {
1890 AST_MATCHER_P(DeclaratorDecl, hasTypeLoc, internal::Matcher<TypeLoc>, Inner) {
1920 QualType, pointsTo, internal::Matcher<QualType>,
1927 AST_MATCHER_P_OVERLOAD(QualType, pointsTo, internal::Matcher<Decl>,
1945 AST_MATCHER_P(QualType, references, internal::Matcher<QualType>,
1963 AST_MATCHER_P(QualType, hasCanonicalType, internal::Matcher<QualType>,
1971 AST_MATCHER_P_OVERLOAD(QualType, references, internal::Matcher<Decl>,
1978 internal::Matcher<Expr>, InnerMatcher) {
1987 internal::Matcher<QualType>, InnerMatcher, 0) {
1995 internal::Matcher<Decl>, InnerMatcher, 1) {
2010 AST_MATCHER_P(DeclRefExpr, to, internal::Matcher<Decl>,
2034 internal::Matcher<UsingShadowDecl>, InnerMatcher) {
2050 AST_MATCHER_P(DeclStmt, hasSingleDecl, internal::Matcher<Decl>, InnerMatcher) {
2067 VarDecl, hasInitializer, internal::Matcher<Expr>,
2128 unsigned, N, internal::Matcher<Expr>, InnerMatcher) {
2169 internal::Matcher<Decl>, InnerMatcher) {
2190 internal::Matcher<CXXCtorInitializer>, InnerMatcher) {
2209 internal::Matcher<FieldDecl>, InnerMatcher) {
2229 internal::Matcher<Expr>, InnerMatcher) {
2270 internal::Matcher<Expr>, InnerMatcher) {
2298 unsigned, N, internal::Matcher<ParmVarDecl>,
2318 internal::Matcher<ParmVarDecl>, InnerMatcher) {
2345 internal::Matcher<QualType>, InnerMatcher) {
2373 internal::Matcher<Expr>, InnerMatcher) {
2386 AST_MATCHER_P(IfStmt, hasThen, internal::Matcher<Stmt>, InnerMatcher) {
2398 AST_MATCHER_P(IfStmt, hasElse, internal::Matcher<Stmt>, InnerMatcher) {
2448 internal::Matcher<DeclStmt>, InnerMatcher) {
2465 internal::Matcher<Expr>, InnerMatcher) {
2482 internal::Matcher<Expr>, InnerMatcher) {
2503 internal::Matcher<Stmt>, InnerMatcher) {
2521 internal::Matcher<Stmt>, InnerMatcher) {
2547 /// Usable as: Matcher<CharacterLiteral>, Matcher<CXXBoolLiteral>,
2548 /// Matcher<FloatingLiteral>, Matcher<IntegerLiteral>
2577 internal::Matcher<Expr>, InnerMatcher) {
2590 internal::Matcher<Expr>, InnerMatcher) {
2598 inline internal::Matcher<BinaryOperator> hasEitherOperand(
2599 const internal::Matcher<Expr> &InnerMatcher) {
2610 internal::Matcher<Expr>, InnerMatcher) {
2624 internal::Matcher<Expr>, InnerMatcher) {
2635 internal::Matcher<QualType>, InnerMatcher) {
2645 internal::Matcher<QualType>, InnerMatcher) {
2656 internal::Matcher<Expr>, InnerMatcher) {
2669 internal::Matcher<Expr>, InnerMatcher) {
2687 /// Usable as: Matcher<TagDecl>, Matcher<VarDecl>, Matcher<FunctionDecl>
2711 internal::Matcher<CXXRecordDecl>, InnerMatcher) {
2860 internal::Matcher<ValueDecl>, InnerMatcher) {
2877 internal::Matcher<Expr>, InnerMatcher) {
2891 internal::Matcher<UsingShadowDecl>, InnerMatcher) {
2909 internal::Matcher<NamedDecl>, InnerMatcher) {
2935 /// Usable as: Matcher<FunctionDecl>, Matcher<VarDecl>, Matcher<CXXRecordDecl>
2955 /// Usable as: Matcher<FunctionDecl>, Matcher<VarDecl>, Matcher<CXXRecordDecl>
2965 internal::Matcher<QualType>, InnerMatcher, 0) {
3018 /// Usable as: Matcher<ArrayType>, Matcher<ComplexType>
3103 internal::Matcher<Expr>, InnerMatcher) {
3127 /// Usable as: Matcher<AtomicType>
3156 /// Usable as: Matcher<AutoType>
3194 /// Usable as: Matcher<ParenType>
3288 /// Usable as: Matcher<BlockPointerType>, Matcher<MemberPointerType>,
3289 /// Matcher<PointerType>, Matcher<ReferenceType>
3381 internal::Matcher<NestedNameSpecifier>, InnerMatcher) {
3403 AST_MATCHER_P(ElaboratedType, namesType, internal::Matcher<QualType>,
3422 AST_MATCHER_P(Decl, hasDeclContext, internal::Matcher<Decl>, InnerMatcher) {
3450 internal::Matcher<NestedNameSpecifier>, InnerMatcher, 1) {
3467 internal::Matcher<QualType>, InnerMatcher) {
3485 internal::Matcher<TypeLoc>, InnerMatcher) {
3499 internal::Matcher<NestedNameSpecifier>, InnerMatcher,
3517 internal::Matcher<NestedNameSpecifierLoc>, InnerMatcher,
3536 internal::Matcher<NamespaceDecl>, InnerMatcher) {
3573 AST_MATCHER_P(SwitchStmt, forEachSwitchCase, internal::Matcher<SwitchCase>,
3603 internal::Matcher<CXXCtorInitializer>, InnerMatcher) {
3626 AST_MATCHER_P(CaseStmt, hasCaseConstant, internal::Matcher<Expr>,