class ConceptDecl

Declaration

class ConceptDecl : public TemplateDecl, public Mergeable { /* full declaration omitted */ };

Description

Declaration of a C++2a concept.

Declared at: clang/include/clang/AST/DeclTemplate.h:3262

Inherits from: TemplateDecl, Mergeable

Member Variables

protected clang::Expr* ConstraintExpr

Inherited from TemplateDecl:

protected TemplatedDecl
protected TemplateParams

Inherited from Decl:

protected NextInContextAndBits
protected Access
protected FromASTFile
protected IdentifierNamespace
protected CacheValidAndLinkage

Method Overview

  • protected ConceptDecl(clang::DeclContext * DC, clang::SourceLocation L, clang::DeclarationName Name, clang::TemplateParameterList * Params, clang::Expr * ConstraintExpr)
  • public static clang::ConceptDecl * Create(clang::ASTContext & C, clang::DeclContext * DC, clang::SourceLocation L, clang::DeclarationName Name, clang::TemplateParameterList * Params, clang::Expr * ConstraintExpr)
  • public static clang::ConceptDecl * CreateDeserialized(clang::ASTContext & C, unsigned int ID)
  • public static bool classof(const clang::Decl * D)
  • public static bool classofKind(clang::Decl::Kind K)
  • public clang::ConceptDecl * getCanonicalDecl()
  • public const clang::ConceptDecl * getCanonicalDecl() const
  • public clang::Expr * getConstraintExpr() const
  • public clang::SourceRange getSourceRange() const
  • public bool isTypeConcept() const

Inherited from TemplateDecl:

Inherited from NamedDecl:

Inherited from Decl:

Methods

ConceptDecl(clang::DeclContext* DC,
            clang::SourceLocation L,
            clang::DeclarationName Name,
            clang::TemplateParameterList* Params,
            clang::Expr* ConstraintExpr)

Declared at: clang/include/clang/AST/DeclTemplate.h:3266

Parameters

clang::DeclContext* DC
clang::SourceLocation L
clang::DeclarationName Name
clang::TemplateParameterList* Params
clang::Expr* ConstraintExpr

static clang::ConceptDecl* Create(
    clang::ASTContext& C,
    clang::DeclContext* DC,
    clang::SourceLocation L,
    clang::DeclarationName Name,
    clang::TemplateParameterList* Params,
    clang::Expr* ConstraintExpr)

Declared at: clang/include/clang/AST/DeclTemplate.h:3271

Parameters

clang::ASTContext& C
clang::DeclContext* DC
clang::SourceLocation L
clang::DeclarationName Name
clang::TemplateParameterList* Params
clang::Expr* ConstraintExpr

static clang::ConceptDecl* CreateDeserialized(
    clang::ASTContext& C,
    unsigned int ID)

Declared at: clang/include/clang/AST/DeclTemplate.h:3275

Parameters

clang::ASTContext& C
unsigned int ID

static bool classof(const clang::Decl* D)

Declared at: clang/include/clang/AST/DeclTemplate.h:3298

Parameters

const clang::Decl* D

static bool classofKind(clang::Decl::Kind K)

Declared at: clang/include/clang/AST/DeclTemplate.h:3299

Parameters

clang::Decl::Kind K

clang::ConceptDecl* getCanonicalDecl()

Description

Retrieves the "canonical" declaration of the given declaration.

Declared at: clang/include/clang/AST/DeclTemplate.h:3290

const clang::ConceptDecl* getCanonicalDecl() const

Declared at: clang/include/clang/AST/DeclTemplate.h:3293

clang::Expr* getConstraintExpr() const

Declared at: clang/include/clang/AST/DeclTemplate.h:3277

clang::SourceRange getSourceRange() const

Description

Source range that this declaration covers.

Declared at: clang/include/clang/AST/DeclTemplate.h:3281

bool isTypeConcept() const

Declared at: clang/include/clang/AST/DeclTemplate.h:3286