Lines Matching refs:TemplateArgument

40 class TemplateArgument {
99 const TemplateArgument *Args;
118 TemplateArgument(TemplateName, bool) = delete;
122 TemplateArgument() { in TemplateArgument() function
128 TemplateArgument(QualType T, bool isNullPtr = false) {
136 TemplateArgument(ValueDecl *D, QualType QT) { in TemplateArgument() function
145 TemplateArgument(ASTContext &Ctx, const llvm::APSInt &Value, QualType Type);
149 TemplateArgument(const TemplateArgument &Other, QualType Type) { in TemplateArgument() function
162 TemplateArgument(TemplateName Name) { in TemplateArgument() function
179 TemplateArgument(TemplateName Name, Optional<unsigned> NumExpansions) { in TemplateArgument() function
193 TemplateArgument(Expr *E) { in TemplateArgument() function
202 explicit TemplateArgument(ArrayRef<TemplateArgument> Args) { in TemplateArgument() function
208 static TemplateArgument getEmptyPack() { return TemplateArgument(None); } in getEmptyPack()
212 static TemplateArgument CreatePackCopy(ASTContext &Context,
213 ArrayRef<TemplateArgument> Args);
311 typedef const TemplateArgument * pack_iterator;
341 ArrayRef<TemplateArgument> getPackAsArray() const { in getPackAsArray()
348 bool structurallyEquals(const TemplateArgument &Other) const;
352 TemplateArgument getPackExpansionPattern() const;
428 TemplateArgument Argument;
434 TemplateArgumentLoc(const TemplateArgument &Argument, in TemplateArgumentLoc()
439 TemplateArgumentLoc(const TemplateArgument &Argument, TypeSourceInfo *TInfo) in TemplateArgumentLoc()
441 assert(Argument.getKind() == TemplateArgument::Type); in TemplateArgumentLoc()
444 TemplateArgumentLoc(const TemplateArgument &Argument, Expr *E) in TemplateArgumentLoc()
446 assert(Argument.getKind() == TemplateArgument::Expression); in TemplateArgumentLoc()
449 TemplateArgumentLoc(const TemplateArgument &Argument,
454 assert(Argument.getKind() == TemplateArgument::Template || in Argument()
455 Argument.getKind() == TemplateArgument::TemplateExpansion); in Argument()
460 if (Argument.getKind() == TemplateArgument::Template || in getLocation()
461 Argument.getKind() == TemplateArgument::TemplateExpansion) in getLocation()
470 const TemplateArgument &getArgument() const { in getArgument()
479 assert(Argument.getKind() == TemplateArgument::Type); in getTypeSourceInfo()
484 assert(Argument.getKind() == TemplateArgument::Expression); in getSourceExpression()
489 assert(Argument.getKind() == TemplateArgument::Declaration); in getSourceDeclExpression()
494 assert(Argument.getKind() == TemplateArgument::NullPtr); in getSourceNullPtrExpression()
499 assert(Argument.getKind() == TemplateArgument::Integral); in getSourceIntegralExpression()
504 assert(Argument.getKind() == TemplateArgument::Template || in getTemplateQualifierLoc()
505 Argument.getKind() == TemplateArgument::TemplateExpansion); in getTemplateQualifierLoc()
510 assert(Argument.getKind() == TemplateArgument::Template || in getTemplateNameLoc()
511 Argument.getKind() == TemplateArgument::TemplateExpansion); in getTemplateNameLoc()
516 assert(Argument.getKind() == TemplateArgument::TemplateExpansion); in getTemplateEllipsisLoc()
641 const TemplateArgument &Arg);
653 inline const TemplateArgument &
659 inline const TemplateArgument &