| /freebsd/contrib/llvm-project/clang/include/clang/AST/ |
| H A D | TemplateBase.h | 61 class TemplateArgument { 155 const TemplateArgument *Args; 192 constexpr TemplateArgument() 196 TemplateArgument(QualType T, bool isNullPtr = false, 203 TemplateArgument(ValueDecl *D, QualType QT, bool IsDefaulted = false) { 209 TemplateArgument(const ASTContext &Ctx, const llvm::APSInt &Value, 213 TemplateArgument(const ASTContext &Ctx, QualType Type, const APValue &Value, 218 TemplateArgument(const TemplateArgument &Other, QualType Type) { 234 TemplateArgument(TemplateName Name, bool IsDefaulted = false) { 255 TemplateArgument(TemplateName Name, UnsignedOrNone NumExpansions, [all …]
|
| H A D | TemplateArgumentVisitor.h | 29 case TemplateArgument::NAME: \ 30 return static_cast<ImplClass *>(this)->Visit##NAME##TemplateArgument( \ 33 RetTy Visit(REF(TemplateArgument) TA, ParamTys... P) { in Visit() 53 RetTy Visit##CATEGORY##TemplateArgument(REF(TemplateArgument) TA, \ 70 RetTy VisitTemplateArgument(REF(TemplateArgument), ParamTys...) { in VisitTemplateArgument() argument
|
| H A D | TextNodeDumper.h | 175 void Visit(const TemplateArgument &TA, SourceRange R, 216 void dumpTemplateArgument(const TemplateArgument &TA); 247 void VisitNullTemplateArgument(const TemplateArgument &TA); 248 void VisitTypeTemplateArgument(const TemplateArgument &TA); 249 void VisitDeclarationTemplateArgument(const TemplateArgument &TA); 250 void VisitNullPtrTemplateArgument(const TemplateArgument &TA); 251 void VisitIntegralTemplateArgument(const TemplateArgument &TA); 252 void VisitStructuralValueTemplateArgument(const TemplateArgument &TA); 253 void VisitTemplateTemplateArgument(const TemplateArgument &TA); 254 void VisitTemplateExpansionTemplateArgument(const TemplateArgument &TA); [all …]
|
| H A D | DeclTemplate.h | 75 TemplateArgument *InjectedArgs = nullptr; 202 ArrayRef<TemplateArgument> getInjectedTemplateArgs(const ASTContext &Context); 249 : private llvm::TrailingObjects<TemplateArgumentList, TemplateArgument> { 256 TemplateArgumentList(ArrayRef<TemplateArgument> Args); 267 ArrayRef<TemplateArgument> Args); 270 const TemplateArgument &get(unsigned Idx) const { in get() 276 const TemplateArgument &operator[](unsigned Idx) const { return get(Idx); } 279 ArrayRef<TemplateArgument> asArray() const { in asArray() 288 const TemplateArgument *data() const { return getTrailingObjects(); } in data() 602 Profile(llvm::FoldingSetNodeID &ID, ArrayRef<TemplateArgument> TemplateArgs, in Profile() [all …]
|
| H A D | PropertiesBase.td | 140 def TemplateArgument : PropertyType; 141 def TemplateArgumentKind : EnumPropertyType<"TemplateArgument::ArgKind">; 745 def : Property<"argumentPack", TemplateArgument> { 771 def : Property<"defaultArgs", Array<TemplateArgument>> { 779 // Type cases for TemplateArgument. 780 def : PropertyTypeKind<TemplateArgument, TemplateArgumentKind, 782 let Class = PropertyTypeCase<TemplateArgument, "Null"> in { 784 return TemplateArgument(); 787 let Class = PropertyTypeCase<TemplateArgument, "Type"> in { 795 return TemplateArgument(type, /* isNullPtr */ false, isDefaulted); [all …]
|
| H A D | JSONNodeDumper.h | 203 void Visit(const TemplateArgument &TA, SourceRange R = {}, 346 void VisitNullTemplateArgument(const TemplateArgument &TA); 347 void VisitTypeTemplateArgument(const TemplateArgument &TA); 348 void VisitDeclarationTemplateArgument(const TemplateArgument &TA); 349 void VisitNullPtrTemplateArgument(const TemplateArgument &TA); 350 void VisitIntegralTemplateArgument(const TemplateArgument &TA); 351 void VisitStructuralValueTemplateArgument(const TemplateArgument &TA); 352 void VisitTemplateTemplateArgument(const TemplateArgument &TA); 353 void VisitTemplateExpansionTemplateArgument(const TemplateArgument &TA); 354 void VisitExpressionTemplateArgument(const TemplateArgument &TA); [all …]
|
| H A D | TemplateName.h | 44 class TemplateArgument; variable 152 const TemplateArgument *Arguments; 156 SubstTemplateTemplateParmPackStorage(ArrayRef<TemplateArgument> ArgPack, 176 TemplateArgument getArgumentPack() const; 181 const TemplateArgument &ArgPack, Decl *AssociatedDecl, 189 ArrayRef<TemplateArgument> Args; 467 /*Args=*/{reinterpret_cast<const TemplateArgument *>(this + 1), in getDefaultArguments()
|
| /freebsd/contrib/llvm-project/clang/lib/AST/ |
| H A D | TemplateBase.cpp | 53 static void printIntegral(const TemplateArgument &TemplArg, raw_ostream &Out, in printIntegral() 160 void TemplateArgument::initFromType(QualType T, bool IsNullPtr, in initFromType() 167 void TemplateArgument::initFromDeclaration(ValueDecl *D, QualType QT, in initFromDeclaration() 176 void TemplateArgument::initFromIntegral(const ASTContext &Ctx, in initFromIntegral() 197 void TemplateArgument::initFromStructural(const ASTContext &Ctx, QualType Type, in initFromStructural() 206 TemplateArgument::TemplateArgument(const ASTContext &Ctx, in TemplateArgument() function in TemplateArgument 238 TemplateArgument::TemplateArgument(const ASTContext &Ctx, QualType Type, in TemplateArgument() function in TemplateArgument 252 TemplateArgument 253 TemplateArgument::CreatePackCopy(ASTContext &Context, in CreatePackCopy() 254 ArrayRef<TemplateArgument> Args) { in CreatePackCopy() [all …]
|
| H A D | QualTypeNames.cpp | 93 TemplateArgument &Arg, in getFullyQualifiedTemplateArgument() 100 if (Arg.getKind() == TemplateArgument::Template) { in getFullyQualifiedTemplateArgument() 104 Arg = TemplateArgument(TName); in getFullyQualifiedTemplateArgument() 106 } else if (Arg.getKind() == TemplateArgument::Type) { in getFullyQualifiedTemplateArgument() 111 Arg = TemplateArgument(QTFQ); in getFullyQualifiedTemplateArgument() 129 SmallVector<TemplateArgument, 4> FQArgs; in getFullyQualifiedTemplateType() 132 for (TemplateArgument Arg : TST->template_arguments()) { in getFullyQualifiedTemplateType() 159 SmallVector<TemplateArgument, 4> FQArgs; in getFullyQualifiedTemplateType() 163 TemplateArgument Arg(TemplateArgs[I]); in getFullyQualifiedTemplateType()
|
| H A D | TypeLoc.cpp | 600 ASTContext &Context, ArrayRef<TemplateArgument> Args, in initializeArgLocs() 604 case TemplateArgument::Null: in initializeArgLocs() 607 case TemplateArgument::Integral: in initializeArgLocs() 608 case TemplateArgument::Declaration: in initializeArgLocs() 609 case TemplateArgument::NullPtr: in initializeArgLocs() 610 case TemplateArgument::StructuralValue: in initializeArgLocs() 614 case TemplateArgument::Expression: in initializeArgLocs() 618 case TemplateArgument::Type: in initializeArgLocs() 624 case TemplateArgument::Template: in initializeArgLocs() 625 case TemplateArgument::TemplateExpansion: { in initializeArgLocs() [all …]
|
| H A D | ASTDiagnostic.cpp | 121 SmallVector<TemplateArgument, 4> Args; in desugarForDiagnostic() 122 for (const TemplateArgument &Arg : TST->template_arguments()) { in desugarForDiagnostic() 123 if (Arg.getKind() == TemplateArgument::Type) in desugarForDiagnostic() 988 typedef const TemplateArgument& reference; 989 typedef const TemplateArgument* pointer; 1004 TemplateArgument::pack_iterator CurrentTA; 1007 TemplateArgument::pack_iterator EndTA; 1018 TemplateArgument TA = TST->template_arguments()[0]; in InternalIterator() 1019 if (TA.getKind() != TemplateArgument::Pack) return; in InternalIterator() 1063 TemplateArgument TA = TST->template_arguments()[Index]; in operator ++() [all …]
|
| H A D | DeclTemplate.cpp | 246 ArrayRef<TemplateArgument> 249 InjectedArgs = new (Context) TemplateArgument[size()]; in getInjectedTemplateArgs() 364 ArrayRef<TemplateArgument> Args, TemplateParameterList *TPL) const { in loadLazySpecializationsImpl() 478 FunctionTemplateDecl::findSpecialization(ArrayRef<TemplateArgument> Args, in findSpecialization() 572 ClassTemplateDecl::findSpecialization(ArrayRef<TemplateArgument> Args, in findSpecialization() 587 ArrayRef<TemplateArgument> Args, in findPartialSpecialization() 594 llvm::FoldingSetNodeID &ID, ArrayRef<TemplateArgument> TemplateArgs, in Profile() 597 for (const TemplateArgument &TemplateArg : TemplateArgs) in Profile() 937 TemplateArgumentList::TemplateArgumentList(ArrayRef<TemplateArgument> Args) in TemplateArgumentList() 944 ArrayRef<TemplateArgument> Args) { in CreateCopy() [all …]
|
| H A D | TypePrinter.cpp | 2306 const TemplateArgument &getArgument(const TemplateArgument &A) { return A; } in getArgument() 2308 static const TemplateArgument &getArgument(const TemplateArgumentLoc &A) { in getArgument() 2312 static void printArgument(const TemplateArgument &A, const PrintingPolicy &PP, in printArgument() 2320 const TemplateArgument::ArgKind &Kind = A.getArgument().getKind(); in printArgument() 2321 if (Kind == TemplateArgument::ArgKind::Type) in printArgument() 2326 static bool isSubstitutedTemplateArgument(ASTContext &Ctx, TemplateArgument Arg, 2327 TemplateArgument Pattern, 2328 ArrayRef<TemplateArgument> Args, 2332 ArrayRef<TemplateArgument> Args, unsigned Depth) { in isSubstitutedType() 2339 Args[TTPT->getIndex()].getKind() == TemplateArgument::Type) { in isSubstitutedType() [all …]
|
| H A D | TemplateName.cpp | 41 llvm::copy(DefArgs.Args, reinterpret_cast<TemplateArgument *>(this + 1)); in DeducedTemplateStorage() 56 for (const TemplateArgument &Arg : DefArgs.Args) in Profile() 60 TemplateArgument 62 return TemplateArgument(ArrayRef(Arguments, Bits.Data)); in getArgumentPack() 95 ArrayRef<TemplateArgument> ArgPack, Decl *AssociatedDecl, unsigned Index, in SubstTemplateTemplateParmPackStorage() 119 const TemplateArgument &ArgPack, Decl *AssociatedDecl, unsigned Index, in Profile() 387 for (const TemplateArgument &Arg : DTS->getDefaultArguments().Args) in getDependence()
|
| /freebsd/contrib/llvm-project/clang/lib/Sema/ |
| H A D | SemaTemplateDeduction.cpp | 133 ArrayRef<TemplateArgument> Ps, 134 ArrayRef<TemplateArgument> As, 141 const TemplateArgument &TemplateArg, 228 case TemplateArgument::Null: in checkDeducedTemplateArguments() 231 case TemplateArgument::Type: { in checkDeducedTemplateArguments() 234 if (Y.getKind() == TemplateArgument::Type && Context.hasSameType(TX, TY)) in checkDeducedTemplateArguments() 248 case TemplateArgument::Integral: in checkDeducedTemplateArguments() 252 if (Y.getKind() == TemplateArgument::Expression || in checkDeducedTemplateArguments() 253 Y.getKind() == TemplateArgument::Declaration || in checkDeducedTemplateArguments() 254 (Y.getKind() == TemplateArgument::Integral && in checkDeducedTemplateArguments() [all …]
|
| H A D | SemaTemplateVariadic.cpp | 239 bool TraverseTemplateArgument(const TemplateArgument &Arg) override { in TraverseTemplateArgument() 593 void Sema::collectUnexpandedParameterPacks(TemplateArgument Arg, in collectUnexpandedParameterPacks() 826 ArrayRef<TemplateArgument> Pack = in CheckParameterPacksForExpansion() 830 llvm::count_if(Pack, [](const TemplateArgument &TA) { in CheckParameterPacksForExpansion() 834 if (TA.getKind() == TemplateArgument::Type) in CheckParameterPacksForExpansion() 839 if (TA.getKind() == TemplateArgument::Expression) in CheckParameterPacksForExpansion() 1252 const TemplateArgument &Argument = OrigLoc.getArgument(); in getTemplateArgumentPackExpansionPattern() 1255 case TemplateArgument::Type: { in getTemplateArgumentPackExpansionPattern() 1276 return TemplateArgumentLoc(TemplateArgument(Pattern.getType()), in getTemplateArgumentPackExpansionPattern() 1280 case TemplateArgument::Expression: { in getTemplateArgumentPackExpansionPattern() [all …]
|
| H A D | SemaTemplate.cpp | 911 return TemplateArgumentLoc(TemplateArgument(T), DI); in translateTemplateArgument() 916 return TemplateArgumentLoc(TemplateArgument(E, /*IsCanonical=*/false), E); in translateTemplateArgument() 921 TemplateArgument TArg; in translateTemplateArgument() 923 TArg = TemplateArgument(Template, /*NumExpansions=*/std::nullopt); in translateTemplateArgument() 1153 S.getTrivialTemplateArgumentLoc(TemplateArgument(ConstrainedType), in formImmediatelyDeclaredConstraint() 1584 TemplateArgument(Default, /*IsCanonical=*/false), in ActOnNonTypeTemplateParameter() 3105 ArrayRef<TemplateArgument> Ts) { in builtinCommonTypeImpl() 3106 auto lookUpCommonType = [&](TemplateArgument T1, in builtinCommonTypeImpl() 3107 TemplateArgument T2) -> QualType { in builtinCommonTypeImpl() 3292 ArrayRef<TemplateArgument> Converted, in checkBuiltinTemplateIdType() [all …]
|
| H A D | SemaTemplateInstantiate.cpp | 114 ArrayRef<TemplateArgument> AssociatedTemplateArguments; 361 ArrayRef<TemplateArgument> Arguments = TSTy->template_arguments(); in HandleFunctionTemplateDecl() 485 std::optional<ArrayRef<TemplateArgument>> Innermost, bool RelativeToPrimary, in getTemplateInstantiationArgs() 603 Decl *Entity, NamedDecl *Template, ArrayRef<TemplateArgument> TemplateArgs, in InstantiatingTemplate() 657 TemplateDecl *Template, ArrayRef<TemplateArgument> TemplateArgs, in InstantiatingTemplate() 668 ArrayRef<TemplateArgument> TemplateArgs, in InstantiatingTemplate() 682 ArrayRef<TemplateArgument> TemplateArgs, in InstantiatingTemplate() 693 ArrayRef<TemplateArgument> TemplateArgs, in InstantiatingTemplate() 704 ArrayRef<TemplateArgument> TemplateArgs, in InstantiatingTemplate() 714 ArrayRef<TemplateArgument> TemplateArgs, SourceRange InstantiationRange) in InstantiatingTemplate() [all …]
|
| H A D | SemaTemplateDeductionGuide.cpp | 343 SmallVector<TemplateArgument, 16> SubstArgs; in transformConstructor() 356 SmallVector<TemplateArgument, 16> Depth1Args; in transformConstructor() 687 ArrayRef<TemplateArgument> DeducedArgs) { in TemplateParamsReferencedInTemplateArgumentList() 800 SmallVector<TemplateArgument> AdjustedAliasTemplateArgs; in buildAssociatedConstraints() 813 TemplateArgument NewTemplateArgument = in buildAssociatedConstraints() 819 SmallVector<TemplateArgument> TemplateArgsForBuildingRC( in buildAssociatedConstraints() 929 SmallVector<TemplateArgument> TransformedTemplateArgs; in buildIsDeducibleConstraint() 941 TemplateArgument NewTemplateArgument = in buildIsDeducibleConstraint() 971 std::pair<TemplateDecl *, llvm::ArrayRef<TemplateArgument>> 978 llvm::ArrayRef<TemplateArgument> AliasRhsTemplateArgs; in getRHSTemplateDeclAndArgs() [all …]
|
| /freebsd/contrib/llvm-project/clang/lib/Serialization/ |
| H A D | TemplateArgumentHasher.cpp | 41 void AddTemplateArgument(TemplateArgument TA); 63 void TemplateArgumentHasher::AddTemplateArgument(TemplateArgument TA) { in AddTemplateArgument() 68 case TemplateArgument::Null: in AddTemplateArgument() 72 case TemplateArgument::Type: in AddTemplateArgument() 75 case TemplateArgument::Declaration: in AddTemplateArgument() 78 case TemplateArgument::NullPtr: in AddTemplateArgument() 81 case TemplateArgument::Integral: { in AddTemplateArgument() 87 case TemplateArgument::StructuralValue: in AddTemplateArgument() 91 case TemplateArgument::Template: in AddTemplateArgument() 92 case TemplateArgument::TemplateExpansion: in AddTemplateArgument() [all …]
|
| /freebsd/contrib/llvm-project/lldb/source/Plugins/ExpressionParser/Clang/ |
| H A D | CxxModuleHandler.cpp | 161 static bool templateArgsAreSupported(ArrayRef<TemplateArgument> a) { in templateArgsAreSupported() 162 for (const TemplateArgument &arg : a) { in templateArgsAreSupported() 164 case TemplateArgument::Type: in templateArgsAreSupported() 165 case TemplateArgument::Integral: in templateArgsAreSupported() 231 llvm::SmallVector<TemplateArgument, 4> imported_args; in tryInstantiateStdTemplate() 234 for (const TemplateArgument &arg : foreign_args.asArray()) { in tryInstantiateStdTemplate() 236 case TemplateArgument::Type: { in tryInstantiateStdTemplate() 243 TemplateArgument(*type, /*isNullPtr*/ false, arg.getIsDefaulted())); in tryInstantiateStdTemplate() 246 case TemplateArgument::Integral: { in tryInstantiateStdTemplate() 254 imported_args.push_back(TemplateArgument(d->getASTContext(), integral, in tryInstantiateStdTemplate()
|
| /freebsd/contrib/llvm-project/clang/include/clang/Sema/ |
| H A D | Template.h | 79 using ArgList = ArrayRef<TemplateArgument>; 154 const TemplateArgument &operator()(unsigned Depth, unsigned Index) const { in operator() 190 for (const TemplateArgument &TA : ListLevel.Args) in isAnyArgInstantiationDependent() 198 TemplateArgument Arg) { in setArgument() 202 const_cast<TemplateArgument &>( in setArgument() 327 class DeducedTemplateArgument : public TemplateArgument { 335 DeducedTemplateArgument(const TemplateArgument &Arg, 337 : TemplateArgument(Arg), DeducedFromArrayBound(DeducedFromArrayBound) {} in TemplateArgument() function 345 : TemplateArgument(Ctx, Value, ValueType), in DeducedTemplateArgument() 425 const TemplateArgument *ArgsInPartiallySubstitutedPack; [all …]
|
| H A D | TemplateDeduction.h | 224 TemplateArgument FirstArg; 238 TemplateArgument SecondArg; 296 const TemplateArgument *getFirstArg(); 300 const TemplateArgument *getSecondArg();
|
| /freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ |
| H A D | StdVariantChecker.cpp | 90 static std::optional<ArrayRef<TemplateArgument>> 101 std::optional<ArrayRef<TemplateArgument>> VariantTemplates = in getNthTemplateTypeArgFromVariant() 250 case TemplateArgument::ArgKind::Type: in handleStdGetCall() 253 case TemplateArgument::ArgKind::Integral: in handleStdGetCall()
|
| /freebsd/contrib/llvm-project/clang/include/clang/Serialization/ |
| H A D | ASTRecordReader.h | 145 readTemplateArgumentLocInfo(TemplateArgument::ArgKind Kind); 236 TemplateArgument readTemplateArgument(bool Canonicalize) { in readTemplateArgument() 237 TemplateArgument Arg = readTemplateArgument(); in readTemplateArgument() 248 void readTemplateArgumentList(SmallVectorImpl<TemplateArgument> &TemplArgs,
|