clang 20.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"
Public Types | |
enum | CompoundConstraintKind { CCK_Conjunction , CCK_Disjunction } |
using | CompoundConstraint = llvm::PointerIntPair< NormalizedConstraintPair *, 1, CompoundConstraintKind > |
Public Member Functions | |
NormalizedConstraint (AtomicConstraint *C) | |
NormalizedConstraint (FoldExpandedConstraint *C) | |
NormalizedConstraint (ASTContext &C, NormalizedConstraint LHS, NormalizedConstraint RHS, CompoundConstraintKind Kind) | |
NormalizedConstraint (ASTContext &C, const NormalizedConstraint &Other) | |
NormalizedConstraint (NormalizedConstraint &&Other) | |
NormalizedConstraint & | operator= (const NormalizedConstraint &Other)=delete |
NormalizedConstraint & | operator= (NormalizedConstraint &&Other) |
bool | isAtomic () const |
bool | isFoldExpanded () const |
bool | isCompound () const |
CompoundConstraintKind | getCompoundKind () const |
NormalizedConstraint & | getLHS () const |
NormalizedConstraint & | getRHS () const |
AtomicConstraint * | getAtomicConstraint () const |
FoldExpandedConstraint * | getFoldExpandedConstraint () const |
Public Attributes | |
llvm::PointerUnion< AtomicConstraint *, FoldExpandedConstraint *, CompoundConstraint > | Constraint |
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 106 of file SemaConcept.h.
using clang::NormalizedConstraint::CompoundConstraint = llvm::PointerIntPair<NormalizedConstraintPair *, 1, CompoundConstraintKind> |
Definition at line 111 of file SemaConcept.h.
Enumerator | |
---|---|
CCK_Conjunction | |
CCK_Disjunction |
Definition at line 109 of file SemaConcept.h.
|
inline |
Definition at line 118 of file SemaConcept.h.
|
inline |
Definition at line 119 of file SemaConcept.h.
NormalizedConstraint::NormalizedConstraint | ( | ASTContext & | C, |
NormalizedConstraint | LHS, | ||
NormalizedConstraint | RHS, | ||
CompoundConstraintKind | Kind | ||
) |
Definition at line 1531 of file SemaConcept.cpp.
NormalizedConstraint::NormalizedConstraint | ( | ASTContext & | C, |
const NormalizedConstraint & | Other | ||
) |
Definition at line 1539 of file SemaConcept.cpp.
References clang::C, Constraint, and clang::Other.
|
inline |
Definition at line 125 of file SemaConcept.h.
References clang::Other.
|
inline |
Definition at line 152 of file SemaConcept.h.
Referenced by clang::makeCNF(), clang::makeDNF(), and substituteParameterMappings().
|
inline |
Definition at line 144 of file SemaConcept.h.
Referenced by clang::makeCNF(), and clang::makeDNF().
|
inline |
Definition at line 158 of file SemaConcept.h.
Referenced by clang::makeCNF(), clang::makeDNF(), and substituteParameterMappings().
NormalizedConstraint & NormalizedConstraint::getLHS | ( | ) | const |
Definition at line 1557 of file SemaConcept.cpp.
References Constraint, and isCompound().
Referenced by clang::makeCNF(), clang::makeDNF(), and substituteParameterMappings().
NormalizedConstraint & NormalizedConstraint::getRHS | ( | ) | const |
Definition at line 1562 of file SemaConcept.cpp.
References Constraint, and isCompound().
Referenced by clang::makeCNF(), clang::makeDNF(), and substituteParameterMappings().
|
inline |
Definition at line 138 of file SemaConcept.h.
Referenced by clang::makeCNF(), and clang::makeDNF().
|
inline |
Definition at line 142 of file SemaConcept.h.
Referenced by getLHS(), getRHS(), and substituteParameterMappings().
|
inline |
Definition at line 139 of file SemaConcept.h.
Referenced by clang::makeCNF(), clang::makeDNF(), and substituteParameterMappings().
|
delete |
|
inline |
Definition at line 130 of file SemaConcept.h.
References Constraint, and clang::Other.
|
friend |
Definition at line 107 of file SemaConcept.h.
llvm::PointerUnion<AtomicConstraint *, FoldExpandedConstraint *, CompoundConstraint> clang::NormalizedConstraint::Constraint |
Definition at line 116 of file SemaConcept.h.
Referenced by getLHS(), getRHS(), NormalizedConstraint(), and operator=().