class TypeConstraint

Declaration

class TypeConstraint : public ConceptReference { /* full declaration omitted */ };

Description

Common data class for constructs that reference concepts with template arguments.

Declared at: clang/include/clang/AST/ASTConcept.h:167

Inherits from: ConceptReference

Member Variables

private clang::Expr* ImmediatelyDeclaredConstraint = nullptr

Inherited from ConceptReference:

protected NestedNameSpec
protected TemplateKWLoc
protected ConceptName
protected FoundDecl
protected NamedConcept
protected ArgsAsWritten

Method Overview

  • public TypeConstraint(clang::NestedNameSpecifierLoc NNS, clang::DeclarationNameInfo ConceptNameInfo, clang::NamedDecl * FoundDecl, clang::ConceptDecl * NamedConcept, const clang::ASTTemplateArgumentListInfo * ArgsAsWritten, clang::Expr * ImmediatelyDeclaredConstraint)
  • public clang::Expr * getImmediatelyDeclaredConstraint() const
  • public void print(llvm::raw_ostream & OS, clang::PrintingPolicy Policy) const

Inherited from ConceptReference:

Methods

TypeConstraint(
    clang::NestedNameSpecifierLoc NNS,
    clang::DeclarationNameInfo ConceptNameInfo,
    clang::NamedDecl* FoundDecl,
    clang::ConceptDecl* NamedConcept,
    const clang::ASTTemplateArgumentListInfo*
        ArgsAsWritten,
    clang::Expr* ImmediatelyDeclaredConstraint)

Declared at: clang/include/clang/AST/ASTConcept.h:173

Parameters

clang::NestedNameSpecifierLoc NNS
clang::DeclarationNameInfo ConceptNameInfo
clang::NamedDecl* FoundDecl
clang::ConceptDecl* NamedConcept
const clang::ASTTemplateArgumentListInfo* ArgsAsWritten
clang::Expr* ImmediatelyDeclaredConstraint

clang::Expr* getImmediatelyDeclaredConstraint()
    const

Description

Get the immediately-declared constraint expression introduced by this type-constraint, that is - the constraint expression that is added to the associated constraints of the enclosing declaration in practice.

Declared at: clang/include/clang/AST/ASTConcept.h:185

void print(llvm::raw_ostream& OS,
           clang::PrintingPolicy Policy) const

Declared at: clang/include/clang/AST/ASTConcept.h:189

Parameters

llvm::raw_ostream& OS
clang::PrintingPolicy Policy