|
#define | TRY_TO(CALL_EXPR) |
|
#define | ATTR_VISITOR_DECLS_ONLY |
|
#define | TRAVERSE_STMT_BASE(NAME, CLASS, VAR, QUEUE) |
|
#define | TRY_TO_TRAVERSE_OR_ENQUEUE_STMT(S) |
|
#define | ABSTRACT_STMT(STMT) |
|
#define | STMT(CLASS, PARENT) bool Traverse##CLASS(CLASS *S, DataRecursionQueue *Queue = nullptr); |
|
#define | STMT(CLASS, PARENT) |
|
#define | ABSTRACT_TYPE(CLASS, BASE) |
|
#define | TYPE(CLASS, BASE) bool Traverse##CLASS##Type(CLASS##Type *T); |
|
#define | TYPE(CLASS, BASE) |
|
#define | ABSTRACT_TYPELOC(CLASS, BASE) |
|
#define | TYPELOC(CLASS, BASE) bool Traverse##CLASS##TypeLoc(CLASS##TypeLoc TL); |
|
#define | TYPE(CLASS, BASE) |
|
#define | ABSTRACT_DECL(DECL) |
|
#define | DECL(CLASS, BASE) bool Traverse##CLASS##Decl(CLASS##Decl *D); |
|
#define | DECL(CLASS, BASE) |
|
#define | DEF_TRAVERSE_TMPL_INST(TMPLDECLKIND) bool TraverseTemplateInstantiations(TMPLDECLKIND##TemplateDecl *D); |
|
#define | GEN_CLANG_CLAUSE_CLASS |
|
#define | CLAUSE_CLASS(Enum, Str, Class) bool Visit##Class(Class *C); |
|
#define | ABSTRACT_STMT(STMT) |
|
#define | STMT(CLASS, PARENT) |
|
#define | ABSTRACT_STMT(STMT) |
|
#define | STMT(CLASS, PARENT) |
|
#define | INITLISTEXPR(CLASS, PARENT) |
|
#define | ABSTRACT_TYPE(CLASS, BASE) |
|
#define | TYPE(CLASS, BASE) |
|
#define | ABSTRACT_TYPELOC(CLASS, BASE) |
|
#define | TYPELOC(CLASS, BASE) |
|
#define | VISITORCLASS RecursiveASTVisitor |
|
#define | ABSTRACT_DECL(DECL) |
|
#define | DECL(CLASS, BASE) |
|
#define | DEF_TRAVERSE_TYPE(TYPE, CODE) |
|
#define | DEF_TRAVERSE_TYPELOC(TYPE, CODE) |
|
#define | DEF_TRAVERSE_DECL(DECL, CODE) |
|
#define | DEF_TRAVERSE_TMPL_DECL(TMPLDECLKIND) |
|
#define | DEF_TRAVERSE_TMPL_SPEC_DECL(TMPLDECLKIND, DECLKIND) |
|
#define | DEF_TRAVERSE_TMPL_PART_SPEC_DECL(TMPLDECLKIND, DECLKIND) |
|
#define | DEF_TRAVERSE_STMT(STMT, CODE) |
|
#define | GEN_CLANG_CLAUSE_CLASS |
|
#define | CLAUSE_CLASS(Enum, Str, Class) |
|
#define | CLAUSE_NO_CLASS(Enum, Str) |
|
|
template<typename FirstMethodPtrTy , typename SecondMethodPtrTy > |
LLVM_ATTRIBUTE_ALWAYS_INLINE LLVM_ATTRIBUTE_NODEBUG auto | clang::detail::isSameMethod (FirstMethodPtrTy FirstMethodPtr, SecondMethodPtrTy SecondMethodPtr) -> bool |
| Returns true if and only if FirstMethodPtr and SecondMethodPtr are pointers to the same non-static member function.
|
|
| clang::DEF_TRAVERSE_TYPE (ComplexType, { TRY_TO(TraverseType(T->getElementType()));}) DEF_TRAVERSE_TYPE(PointerType |
|
| clang::DEF_TRAVERSE_TYPE (BlockPointerType, { TRY_TO(TraverseType(T->getPointeeType()));}) DEF_TRAVERSE_TYPE(LValueReferenceType |
|
| clang::DEF_TRAVERSE_TYPE (RValueReferenceType, { TRY_TO(TraverseType(T->getPointeeType()));}) DEF_TRAVERSE_TYPE(MemberPointerType |
|
| clang::TRY_TO (TraverseType(T->getPointeeType())) |
|
| clang::DEF_TRAVERSE_TYPE (AdjustedType, { TRY_TO(TraverseType(T->getOriginalType()));}) DEF_TRAVERSE_TYPE(DecayedType |
|
| clang::DEF_TRAVERSE_TYPE (ConstantArrayType, { TRY_TO(TraverseType(T->getElementType()));if(T->getSizeExpr()) TRY_TO(TraverseStmt(const_cast< Expr * >(T->getSizeExpr())));}) DEF_TRAVERSE_TYPE(ArrayParameterType |
|
| clang::if (T->getSizeExpr()) TRY_TO(TraverseStmt(const_cast< Expr * >(T -> getSizeExpr()))) |
|
| clang::DEF_TRAVERSE_TYPE (IncompleteArrayType, { TRY_TO(TraverseType(T->getElementType()));}) DEF_TRAVERSE_TYPE(VariableArrayType |
|
| clang::TRY_TO (TraverseStmt(T->getSizeExpr())) |
|
| clang::DEF_TRAVERSE_TYPE (DependentSizedArrayType, { TRY_TO(TraverseType(T->getElementType()));if(T->getSizeExpr()) TRY_TO(TraverseStmt(T->getSizeExpr()));}) DEF_TRAVERSE_TYPE(DependentAddressSpaceType |
|
| clang::DEF_TRAVERSE_TYPE (DependentVectorType, { if(T->getSizeExpr()) TRY_TO(TraverseStmt(T->getSizeExpr()));TRY_TO(TraverseType(T->getElementType()));}) DEF_TRAVERSE_TYPE(DependentSizedExtVectorType |
|
| clang::TRY_TO (TraverseType(T->getElementType())) |
|
| clang::DEF_TRAVERSE_TYPE (VectorType, { TRY_TO(TraverseType(T->getElementType()));}) DEF_TRAVERSE_TYPE(ExtVectorType |
|
| clang::DEF_TRAVERSE_TYPE (ConstantMatrixType, { TRY_TO(TraverseType(T->getElementType()));}) DEF_TRAVERSE_TYPE(DependentSizedMatrixType |
|
| clang::DEF_TRAVERSE_TYPE (FunctionNoProtoType, { TRY_TO(TraverseType(T->getReturnType()));}) DEF_TRAVERSE_TYPE(FunctionProtoType |
|
| clang::for (const auto &A :T->param_types()) |
|
| clang::for (const auto &E :T->exceptions()) |
|
| clang::if (Expr *NE=T->getNoexceptExpr()) TRY_TO(TraverseStmt(NE)) |
|
| clang::DEF_TRAVERSE_TYPE (TypeOfExprType, { TRY_TO(TraverseStmt(T->getUnderlyingExpr()));}) DEF_TRAVERSE_TYPE(TypeOfType |
|
| clang::DEF_TRAVERSE_TYPE (DecltypeType, { TRY_TO(TraverseStmt(T->getUnderlyingExpr()));}) DEF_TRAVERSE_TYPE(PackIndexingType |
|
| clang::TRY_TO (TraverseStmt(T->getIndexExpr())) |
|
| clang::DEF_TRAVERSE_TYPE (UnaryTransformType, { TRY_TO(TraverseType(T->getBaseType()));TRY_TO(TraverseType(T->getUnderlyingType()));}) DEF_TRAVERSE_TYPE(AutoType |
|
| clang::DEF_TRAVERSE_TYPE (DeducedTemplateSpecializationType, { TRY_TO(TraverseTemplateName(T->getTemplateName()));TRY_TO(TraverseType(T->getDeducedType()));}) DEF_TRAVERSE_TYPE(SubstTemplateTypeParmType |
|
| clang::DEF_TRAVERSE_TYPE (SubstTemplateTypeParmPackType, { TRY_TO(TraverseTemplateArgument(T->getArgumentPack()));}) DEF_TRAVERSE_TYPE(TemplateSpecializationType |
|
| clang::TRY_TO (TraverseTemplateArguments(T->template_arguments())) |
|
| clang::DEF_TRAVERSE_TYPE (AttributedType, { TRY_TO(TraverseType(T->getModifiedType()));}) DEF_TRAVERSE_TYPE(CountAttributedType |
|
| clang::TRY_TO (TraverseType(T->desugar())) |
|
| clang::DEF_TRAVERSE_TYPE (BTFTagAttributedType, { TRY_TO(TraverseType(T->getWrappedType()));}) DEF_TRAVERSE_TYPE(ParenType |
|
| clang::DEF_TRAVERSE_TYPE (MacroQualifiedType, { TRY_TO(TraverseType(T->getUnderlyingType()));}) DEF_TRAVERSE_TYPE(ElaboratedType |
|
| clang::DEF_TRAVERSE_TYPE (DependentNameType, { TRY_TO(TraverseNestedNameSpecifier(T->getQualifier()));}) DEF_TRAVERSE_TYPE(DependentTemplateSpecializationType |
|
| clang::DEF_TRAVERSE_TYPE (PackExpansionType, { TRY_TO(TraverseType(T->getPattern()));}) DEF_TRAVERSE_TYPE(ObjCObjectType |
|
| clang::for (auto typeArg :T->getTypeArgsAsWritten()) |
|
| clang::DEF_TRAVERSE_TYPE (ObjCObjectPointerType, { TRY_TO(TraverseType(T->getPointeeType()));}) DEF_TRAVERSE_TYPE(AtomicType |
|
| clang::DEF_TRAVERSE_TYPE (PipeType, { TRY_TO(TraverseType(T->getElementType()));}) DEF_TRAVERSE_TYPE(DependentBitIntType |
|
| clang::DEF_TRAVERSE_TYPELOC (ComplexType, { TRY_TO(TraverseType(TL.getTypePtr() ->getElementType()));}) DEF_TRAVERSE_TYPELOC(PointerType |
|
| clang::DEF_TRAVERSE_TYPELOC (BlockPointerType, { TRY_TO(TraverseTypeLoc(TL.getPointeeLoc()));}) DEF_TRAVERSE_TYPELOC(LValueReferenceType |
|
| clang::DEF_TRAVERSE_TYPELOC (RValueReferenceType, { TRY_TO(TraverseTypeLoc(TL.getPointeeLoc()));}) DEF_TRAVERSE_TYPELOC(MemberPointerType |
|
else | clang::TRY_TO (TraverseType(QualType(TL.getTypePtr() ->getClass(), 0))) |
|
| clang::TRY_TO (TraverseTypeLoc(TL.getPointeeLoc())) |
|
| clang::DEF_TRAVERSE_TYPELOC (AdjustedType, { TRY_TO(TraverseTypeLoc(TL.getOriginalLoc()));}) DEF_TRAVERSE_TYPELOC(DecayedType |
|
| clang::DEF_TRAVERSE_TYPELOC (ConstantArrayType, { TRY_TO(TraverseTypeLoc(TL.getElementLoc()));TRY_TO(TraverseArrayTypeLocHelper(TL));}) DEF_TRAVERSE_TYPELOC(ArrayParameterType |
|
| clang::TRY_TO (TraverseArrayTypeLocHelper(TL)) |
|
| clang::DEF_TRAVERSE_TYPELOC (IncompleteArrayType, { TRY_TO(TraverseTypeLoc(TL.getElementLoc()));TRY_TO(TraverseArrayTypeLocHelper(TL));}) DEF_TRAVERSE_TYPELOC(VariableArrayType |
|
| clang::DEF_TRAVERSE_TYPELOC (DependentSizedArrayType, { TRY_TO(TraverseTypeLoc(TL.getElementLoc()));TRY_TO(TraverseArrayTypeLocHelper(TL));}) DEF_TRAVERSE_TYPELOC(DependentAddressSpaceType |
|
| clang::TRY_TO (TraverseType(TL.getTypePtr() ->getPointeeType())) |
|
| clang::DEF_TRAVERSE_TYPELOC (DependentSizedExtVectorType, { if(TL.getTypePtr() ->getSizeExpr()) TRY_TO(TraverseStmt(TL.getTypePtr() ->getSizeExpr()));TRY_TO(TraverseType(TL.getTypePtr() ->getElementType()));}) DEF_TRAVERSE_TYPELOC(VectorType |
|
| clang::DEF_TRAVERSE_TYPELOC (DependentVectorType, { if(TL.getTypePtr() ->getSizeExpr()) TRY_TO(TraverseStmt(TL.getTypePtr() ->getSizeExpr()));TRY_TO(TraverseType(TL.getTypePtr() ->getElementType()));}) DEF_TRAVERSE_TYPELOC(ExtVectorType |
|
| clang::DEF_TRAVERSE_TYPELOC (ConstantMatrixType, { TRY_TO(TraverseStmt(TL.getAttrRowOperand()));TRY_TO(TraverseStmt(TL.getAttrColumnOperand()));TRY_TO(TraverseType(TL.getTypePtr() ->getElementType()));}) DEF_TRAVERSE_TYPELOC(DependentSizedMatrixType |
|
| clang::TRY_TO (TraverseStmt(TL.getAttrColumnOperand())) |
|
| clang::TRY_TO (TraverseType(TL.getTypePtr() ->getElementType())) |
|
| clang::DEF_TRAVERSE_TYPELOC (FunctionNoProtoType, { TRY_TO(TraverseTypeLoc(TL.getReturnLoc()));}) DEF_TRAVERSE_TYPELOC(FunctionProtoType |
|
| clang::for (unsigned I=0, E=TL.getNumParams();I !=E;++I) |
|
| clang::DEF_TRAVERSE_TYPELOC (TypeOfExprType, { TRY_TO(TraverseStmt(TL.getUnderlyingExpr()));}) DEF_TRAVERSE_TYPELOC(TypeOfType |
|
| clang::DEF_TRAVERSE_TYPELOC (DecltypeType, { TRY_TO(TraverseStmt(TL.getTypePtr() ->getUnderlyingExpr()));}) DEF_TRAVERSE_TYPELOC(PackIndexingType |
|
| clang::TRY_TO (TraverseStmt(TL.getTypePtr() ->getIndexExpr())) |
|
| clang::DEF_TRAVERSE_TYPELOC (UnaryTransformType, { TRY_TO(TraverseTypeLoc(TL.getUnderlyingTInfo() ->getTypeLoc()));}) DEF_TRAVERSE_TYPELOC(AutoType |
|
| clang::if (TL.isConstrained()) |
|
| clang::DEF_TRAVERSE_TYPELOC (DeducedTemplateSpecializationType, { TRY_TO(TraverseTemplateName(TL.getTypePtr() ->getTemplateName()));TRY_TO(TraverseType(TL.getTypePtr() ->getDeducedType()));}) DEF_TRAVERSE_TYPELOC(SubstTemplateTypeParmType |
|
| clang::DEF_TRAVERSE_TYPELOC (SubstTemplateTypeParmPackType, { TRY_TO(TraverseTemplateArgument(TL.getTypePtr() ->getArgumentPack()));}) DEF_TRAVERSE_TYPELOC(TemplateSpecializationType |
|
| clang::DEF_TRAVERSE_TYPELOC (ParenType, { TRY_TO(TraverseTypeLoc(TL.getInnerLoc()));}) DEF_TRAVERSE_TYPELOC(MacroQualifiedType |
|
| clang::DEF_TRAVERSE_TYPELOC (AttributedType, { TRY_TO(TraverseTypeLoc(TL.getModifiedLoc()));}) DEF_TRAVERSE_TYPELOC(CountAttributedType |
|
| clang::DEF_TRAVERSE_TYPELOC (BTFTagAttributedType, { TRY_TO(TraverseTypeLoc(TL.getWrappedLoc()));}) DEF_TRAVERSE_TYPELOC(ElaboratedType |
|
| clang::DEF_TRAVERSE_TYPELOC (DependentNameType, { TRY_TO(TraverseNestedNameSpecifierLoc(TL.getQualifierLoc()));}) DEF_TRAVERSE_TYPELOC(DependentTemplateSpecializationType |
|