class NestedRequirement

Declaration

class NestedRequirement : public Requirement { /* full declaration omitted */ };

Description

A requires-expression requirement which is satisfied when a general constraint expression is satisfied ('nested' requirements).

Declared at: clang/include/clang/AST/ExprConcepts.h:409

Inherits from: Requirement

Member Variables

private llvm::PointerUnion<Expr*, SubstitutionDiagnostic*> Value
private const clang::ASTConstraintSatisfaction* Satisfaction = nullptr

Method Overview

Inherited from Requirement:

Methods

NestedRequirement(
    clang::concepts::Requirement::
        SubstitutionDiagnostic* SubstDiag)

Declared at: clang/include/clang/AST/ExprConcepts.h:417

Parameters

clang::concepts::Requirement:: SubstitutionDiagnostic* SubstDiag

NestedRequirement(clang::Expr* Constraint)

Declared at: clang/include/clang/AST/ExprConcepts.h:422

Parameters

clang::Expr* Constraint

NestedRequirement(
    clang::ASTContext& C,
    clang::Expr* Constraint,
    const clang::ConstraintSatisfaction&
        Satisfaction)

Declared at: clang/include/clang/AST/ExprConcepts.h:431

Parameters

clang::ASTContext& C
clang::Expr* Constraint
const clang::ConstraintSatisfaction& Satisfaction

static bool classof(
    const clang::concepts::Requirement* R)

Declared at: clang/include/clang/AST/ExprConcepts.h:464

Parameters

const clang::concepts::Requirement* R

clang::Expr* getConstraintExpr() const

Declared at: clang/include/clang/AST/ExprConcepts.h:450

const clang::ASTConstraintSatisfaction&
getConstraintSatisfaction() const

Declared at: clang/include/clang/AST/ExprConcepts.h:457

clang::concepts::Requirement::
    SubstitutionDiagnostic*
    getSubstitutionDiagnostic() const

Declared at: clang/include/clang/AST/ExprConcepts.h:443

bool isSubstitutionFailure() const

Declared at: clang/include/clang/AST/ExprConcepts.h:439