struct NormalizedConstraint
Declaration
struct NormalizedConstraint { /* full declaration omitted */ };
Description
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.
Declared at: clang/include/clang/Sema/SemaConcept.h:81
Member Variables
- public llvm::PointerUnion<AtomicConstraint*, CompoundConstraint> Constraint
Method Overview
- public NormalizedConstraint(clang::AtomicConstraint * C)
- public NormalizedConstraint(clang::ASTContext & C, clang::NormalizedConstraint LHS, clang::NormalizedConstraint RHS, clang::NormalizedConstraint::CompoundConstraintKind Kind)
- public NormalizedConstraint(clang::ASTContext & C, const clang::NormalizedConstraint & Other)
- public NormalizedConstraint(clang::NormalizedConstraint && Other)
- private static Optional<clang::NormalizedConstraint> fromConstraintExpr(clang::Sema & S, clang::NamedDecl * D, const clang::Expr * E)
- private static Optional<clang::NormalizedConstraint> fromConstraintExprs(clang::Sema & S, clang::NamedDecl * D, ArrayRef<const clang::Expr *> E)
- public clang::AtomicConstraint * getAtomicConstraint() const
- public clang::NormalizedConstraint::CompoundConstraintKind getCompoundKind() const
- public clang::NormalizedConstraint & getLHS() const
- public clang::NormalizedConstraint & getRHS() const
- public bool isAtomic() const
Methods
¶NormalizedConstraint(clang::AtomicConstraint* C)
NormalizedConstraint(clang::AtomicConstraint* C)
Declared at: clang/include/clang/Sema/SemaConcept.h:92
Parameters
¶NormalizedConstraint(
clang::ASTContext& C,
clang::NormalizedConstraint LHS,
clang::NormalizedConstraint RHS,
clang::NormalizedConstraint::
CompoundConstraintKind Kind)
NormalizedConstraint(
clang::ASTContext& C,
clang::NormalizedConstraint LHS,
clang::NormalizedConstraint RHS,
clang::NormalizedConstraint::
CompoundConstraintKind Kind)
Declared at: clang/include/clang/Sema/SemaConcept.h:93
Parameters
- clang::ASTContext& C
- clang::NormalizedConstraint LHS
- clang::NormalizedConstraint RHS
- clang::NormalizedConstraint:: CompoundConstraintKind Kind
¶NormalizedConstraint(
clang::ASTContext& C,
const clang::NormalizedConstraint& Other)
NormalizedConstraint(
clang::ASTContext& C,
const clang::NormalizedConstraint& Other)
Declared at: clang/include/clang/Sema/SemaConcept.h:99
Parameters
- clang::ASTContext& C
- const clang::NormalizedConstraint& Other
¶NormalizedConstraint(
clang::NormalizedConstraint&& Other)
NormalizedConstraint(
clang::NormalizedConstraint&& Other)
Declared at: clang/include/clang/Sema/SemaConcept.h:110
Parameters
- clang::NormalizedConstraint&& Other
¶static Optional<clang::NormalizedConstraint>
fromConstraintExpr(clang::Sema& S,
clang::NamedDecl* D,
const clang::Expr* E)
static Optional<clang::NormalizedConstraint>
fromConstraintExpr(clang::Sema& S,
clang::NamedDecl* D,
const clang::Expr* E)
Declared at: clang/include/clang/Sema/SemaConcept.h:150
Parameters
- clang::Sema& S
- clang::NamedDecl* D
- const clang::Expr* E
¶static Optional<clang::NormalizedConstraint>
fromConstraintExprs(
clang::Sema& S,
clang::NamedDecl* D,
ArrayRef<const clang::Expr*> E)
static Optional<clang::NormalizedConstraint>
fromConstraintExprs(
clang::Sema& S,
clang::NamedDecl* D,
ArrayRef<const clang::Expr*> E)
Declared at: clang/include/clang/Sema/SemaConcept.h:148
Parameters
- clang::Sema& S
- clang::NamedDecl* D
- ArrayRef<const clang::Expr*> E
¶clang::AtomicConstraint* getAtomicConstraint()
const
clang::AtomicConstraint* getAtomicConstraint()
const
Declared at: clang/include/clang/Sema/SemaConcept.h:140
¶clang::NormalizedConstraint::
CompoundConstraintKind
getCompoundKind() const
clang::NormalizedConstraint::
CompoundConstraintKind
getCompoundKind() const
Declared at: clang/include/clang/Sema/SemaConcept.h:123
¶clang::NormalizedConstraint& getLHS() const
clang::NormalizedConstraint& getLHS() const
Declared at: clang/include/clang/Sema/SemaConcept.h:130
¶clang::NormalizedConstraint& getRHS() const
clang::NormalizedConstraint& getRHS() const
Declared at: clang/include/clang/Sema/SemaConcept.h:135
¶bool isAtomic() const
bool isAtomic() const
Declared at: clang/include/clang/Sema/SemaConcept.h:128