clang 22.0.0git
clang::ConceptIdConstraint Class Reference

#include "clang/Sema/SemaConcept.h"

Inheritance diagram for clang::ConceptIdConstraint:
[legend]

Public Member Functions

const ConceptSpecializationExprgetConceptSpecializationExpr () const
const ConceptReferencegetConceptId () const
const NormalizedConstraintgetNormalizedConstraint () const
NormalizedConstraintgetNormalizedConstraint ()
Public Member Functions inherited from clang::NormalizedConstraintWithParamMapping
const NamedDeclgetConstraintDecl () const
UnsignedOrNone getPackSubstitutionIndex () const
llvm::MutableArrayRef< TemplateArgumentLocgetParameterMapping () const
TemplateParameterListgetUsedTemplateParamList () const
bool hasMatchingParameterMapping (ASTContext &C, const NormalizedConstraint &Other) const
bool hasParameterMapping () const
const OccurenceListmappingOccurenceList () const
const OccurenceListmappingOccurenceListForSubsumption () const
void updateParameterMapping (OccurenceList Indexes, OccurenceList IndexesForSubsumption, llvm::MutableArrayRef< TemplateArgumentLoc > Args, TemplateParameterList *ParamList)
Public Member Functions inherited from clang::NormalizedConstraint
ConstraintKind getKind () const
SourceLocation getBeginLoc () const
SourceLocation getEndLoc () const
SourceRange getSourceRange () const

Static Public Member Functions

static ConceptIdConstraintCreate (ASTContext &Ctx, const ConceptReference *ConceptId, NormalizedConstraint *SubConstraint, const NamedDecl *ConstraintDecl, const ConceptSpecializationExpr *CSE, UnsignedOrNone PackIndex)

Additional Inherited Members

Public Types inherited from clang::NormalizedConstraint
enum class  ConstraintKind : unsigned char { Atomic = 0 , ConceptId , FoldExpanded , Compound }
enum  CompoundConstraintKind : unsigned char { CCK_Conjunction , CCK_Disjunction }
enum class  FoldOperatorKind : unsigned char { And , Or }
using OccurenceList = llvm::SmallBitVector
Protected Types inherited from clang::NormalizedConstraint
using ExprOrConcept
Protected Member Functions inherited from clang::NormalizedConstraintWithParamMapping
 NormalizedConstraint (const Expr *ConstraintExpr, const NamedDecl *ConstraintDecl, UnsignedOrNone PackIndex)
 NormalizedConstraint (const Expr *Pattern, FoldOperatorKind OpKind, NormalizedConstraint *Constraint, const NamedDecl *ConstraintDecl)
 NormalizedConstraint (const ConceptReference *ConceptId, const NamedDecl *ConstraintDecl, NormalizedConstraint *SubConstraint, const ConceptSpecializationExpr *CSE, UnsignedOrNone PackIndex)
 NormalizedConstraint (NormalizedConstraint *LHS, CompoundConstraintKind CCK, NormalizedConstraint *RHS)
Protected Member Functions inherited from clang::NormalizedConstraint
 ~NormalizedConstraint ()
 NormalizedConstraint (const Expr *ConstraintExpr, const NamedDecl *ConstraintDecl, UnsignedOrNone PackIndex)
 NormalizedConstraint (const Expr *Pattern, FoldOperatorKind OpKind, NormalizedConstraint *Constraint, const NamedDecl *ConstraintDecl)
 NormalizedConstraint (const ConceptReference *ConceptId, const NamedDecl *ConstraintDecl, NormalizedConstraint *SubConstraint, const ConceptSpecializationExpr *CSE, UnsignedOrNone PackIndex)
 NormalizedConstraint (NormalizedConstraint *LHS, CompoundConstraintKind CCK, NormalizedConstraint *RHS)
bool hasParameterMapping () const
const OccurenceListmappingOccurenceList () const
const OccurenceListmappingOccurenceListForSubsumption () const
llvm::MutableArrayRef< TemplateArgumentLocgetParameterMapping () const
TemplateParameterListgetUsedTemplateParamList () const
void updateParameterMapping (OccurenceList Indexes, OccurenceList IndexesForSubsumption, llvm::MutableArrayRef< TemplateArgumentLoc > Args, TemplateParameterList *ParamList)
bool hasMatchingParameterMapping (ASTContext &C, const NormalizedConstraint &Other) const
Protected Attributes inherited from clang::NormalizedConstraint
union { 
   AtomicConstraintBits   Atomic 
   FoldExpandedConstraintBits   FoldExpanded 
   ConceptIdBits   ConceptId 
   CompoundConstraintBits   Compound 
}; 

Detailed Description

Definition at line 389 of file SemaConcept.h.

Member Function Documentation

◆ Create()

ConceptIdConstraint * clang::ConceptIdConstraint::Create ( ASTContext & Ctx,
const ConceptReference * ConceptId,
NormalizedConstraint * SubConstraint,
const NamedDecl * ConstraintDecl,
const ConceptSpecializationExpr * CSE,
UnsignedOrNone PackIndex )
inlinestatic

◆ getConceptId()

const ConceptReference * clang::ConceptIdConstraint::getConceptId ( ) const
inline

Definition at line 406 of file SemaConcept.h.

References clang::cast(), and clang::NormalizedConstraint::ConceptId.

◆ getConceptSpecializationExpr()

const ConceptSpecializationExpr * clang::ConceptIdConstraint::getConceptSpecializationExpr ( ) const
inline

Definition at line 402 of file SemaConcept.h.

References clang::NormalizedConstraint::ConceptId.

◆ getNormalizedConstraint() [1/2]

NormalizedConstraint & clang::ConceptIdConstraint::getNormalizedConstraint ( )
inline

◆ getNormalizedConstraint() [2/2]

const NormalizedConstraint & clang::ConceptIdConstraint::getNormalizedConstraint ( ) const
inline

The documentation for this class was generated from the following file: