clang 22.0.0git
|
A normalized constraint, as defined in C++ [temp.constr.normal], is either an atomic constraint, a conjunction of normalized constraints or a disjunction of normalized constraints. More...
#include "clang/Sema/SemaConcept.h"
Classes | |
struct | AtomicConstraintBits |
struct | CompoundConstraintBits |
struct | ConceptIdBits |
struct | FoldExpandedConstraintBits |
Public Types | |
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 |
Public Member Functions | |
ConstraintKind | getKind () const |
SourceLocation | getBeginLoc () const |
SourceLocation | getEndLoc () const |
SourceRange | getSourceRange () const |
Protected Types | |
using | ExprOrConcept |
Protected Attributes | |
union { | |
AtomicConstraintBits Atomic | |
FoldExpandedConstraintBits FoldExpanded | |
ConceptIdBits ConceptId | |
CompoundConstraintBits Compound | |
}; |
Friends | |
class | Sema |
A normalized constraint, as defined in C++ [temp.constr.normal], is either an atomic constraint, a conjunction of normalized constraints or a disjunction of normalized constraints.
Definition at line 36 of file SemaConcept.h.
|
protected |
Definition at line 54 of file SemaConcept.h.
using clang::NormalizedConstraint::OccurenceList = llvm::SmallBitVector |
Definition at line 51 of file SemaConcept.h.
Enumerator | |
---|---|
CCK_Conjunction | |
CCK_Disjunction |
Definition at line 45 of file SemaConcept.h.
|
strong |
Enumerator | |
---|---|
Atomic | |
ConceptId | |
FoldExpanded | |
Compound |
Definition at line 38 of file SemaConcept.h.
|
strong |
Enumerator | |
---|---|
And | |
Or |
Definition at line 49 of file SemaConcept.h.
|
inlineprotected |
Definition at line 117 of file SemaConcept.h.
|
inlineprotected |
Definition at line 122 of file SemaConcept.h.
References Atomic.
Referenced by hasMatchingParameterMapping(), NormalizedConstraint(), NormalizedConstraint(), NormalizedConstraint(), and Sema.
|
inlineprotected |
Definition at line 135 of file SemaConcept.h.
References FoldExpanded, and NormalizedConstraint().
|
inlineprotected |
Definition at line 149 of file SemaConcept.h.
References ConceptId, clang::NormalizedConstraint::AtomicConstraintBits::ConstraintDecl, NormalizedConstraint(), and clang::UnsignedOrNone::toInternalRepresentation().
|
inlineprotected |
Definition at line 163 of file SemaConcept.h.
References Compound, and NormalizedConstraint().
|
inline |
Definition at line 248 of file SemaConcept.h.
References Atomic, clang::cast(), Compound, ConceptId, FoldExpanded, and getKind().
Referenced by getSourceRange().
|
inline |
Definition at line 263 of file SemaConcept.h.
References Atomic, clang::cast(), Compound, ConceptId, FoldExpanded, and getKind().
Referenced by getSourceRange().
|
inline |
Definition at line 244 of file SemaConcept.h.
References Atomic.
Referenced by getBeginLoc(), getEndLoc(), hasMatchingParameterMapping(), hasParameterMapping(), and updateParameterMapping().
|
inlineprotected |
Definition at line 184 of file SemaConcept.h.
References Atomic.
Referenced by hasMatchingParameterMapping().
|
inline |
Definition at line 277 of file SemaConcept.h.
References getBeginLoc(), and getEndLoc().
|
inlineprotected |
Definition at line 188 of file SemaConcept.h.
References Atomic.
|
inlineprotected |
Definition at line 207 of file SemaConcept.h.
References clang::C, Compound, getArgument(), getKind(), getParameterMapping(), hasParameterMapping(), mappingOccurenceListForSubsumption(), NormalizedConstraint(), and clang::Other.
|
inlineprotected |
Definition at line 168 of file SemaConcept.h.
References Atomic, Compound, and getKind().
Referenced by hasMatchingParameterMapping(), mappingOccurenceList(), and mappingOccurenceListForSubsumption().
|
inlineprotected |
Definition at line 174 of file SemaConcept.h.
References Atomic, and hasParameterMapping().
|
inlineprotected |
Definition at line 179 of file SemaConcept.h.
References Atomic, and hasParameterMapping().
Referenced by hasMatchingParameterMapping().
|
inlineprotected |
Definition at line 192 of file SemaConcept.h.
|
friend |
Definition at line 280 of file SemaConcept.h.
References NormalizedConstraint(), and Sema.
Referenced by Sema.
union { ... } clang::NormalizedConstraint |
AtomicConstraintBits clang::NormalizedConstraint::Atomic |
Definition at line 111 of file SemaConcept.h.
Referenced by getBeginLoc(), clang::NormalizedConstraintWithParamMapping::getConstraintDecl(), clang::AtomicConstraint::getConstraintExpr(), getEndLoc(), getKind(), clang::NormalizedConstraintWithParamMapping::getPackSubstitutionIndex(), getParameterMapping(), getUsedTemplateParamList(), hasParameterMapping(), mappingOccurenceList(), mappingOccurenceListForSubsumption(), NormalizedConstraint(), updateParameterMapping(), and ~NormalizedConstraint().
CompoundConstraintBits clang::NormalizedConstraint::Compound |
Definition at line 114 of file SemaConcept.h.
Referenced by getBeginLoc(), clang::CompoundConstraint::getCompoundKind(), getEndLoc(), clang::CompoundConstraint::getLHS(), clang::CompoundConstraint::getLHS(), clang::CompoundConstraint::getRHS(), clang::CompoundConstraint::getRHS(), and NormalizedConstraint().
ConceptIdBits clang::NormalizedConstraint::ConceptId |
Definition at line 113 of file SemaConcept.h.
Referenced by clang::ConceptIdConstraint::Create(), clang::ConceptIdConstraint::getConceptId(), clang::ConceptIdConstraint::getConceptSpecializationExpr(), clang::ConceptIdConstraint::getNormalizedConstraint(), clang::ConceptIdConstraint::getNormalizedConstraint(), and NormalizedConstraint().
FoldExpandedConstraintBits clang::NormalizedConstraint::FoldExpanded |
Definition at line 112 of file SemaConcept.h.
Referenced by getBeginLoc(), getEndLoc(), clang::FoldExpandedConstraint::getFoldOperator(), clang::FoldExpandedConstraint::getNormalizedPattern(), clang::FoldExpandedConstraint::getNormalizedPattern(), clang::FoldExpandedConstraint::getPattern(), and NormalizedConstraint().