clang 10.0.0git

Classes | Public Types | Public Member Functions | List of all members
clang::concepts::Requirement Class Reference

A static requirement that can be used in a requires-expression to check properties of types and expression. More...

`#include "clang/AST/ExprConcepts.h"`

Inheritance diagram for clang::concepts::Requirement:
[legend]

## Classes
struct | SubstitutionDiagnostic

## Public Types
enum | RequirementKind { RK_Type, RK_Simple, RK_Compound, RK_Nested }

## Public Member Functions
| Requirement (RequirementKind Kind, bool IsDependent, bool ContainsUnexpandedParameterPack, bool IsSatisfied=true)
RequirementKind | getKind () const
bool | isSatisfied () const
void | setSatisfied (bool IsSatisfied)
void | setDependent (bool IsDependent)
bool | isDependent () const
void | setContainsUnexpandedParameterPack (bool Contains)
bool | containsUnexpandedParameterPack () const

## Detailed Description

A static requirement that can be used in a requires-expression to check properties of types and expression.

Definition at line 132 of file ExprConcepts.h.

## Member Enumeration Documentation

## ◆ RequirementKind

enum clang::concepts::Requirement::RequirementKind

Enumerator
RK_Type |
RK_Simple |
RK_Compound |
RK_Nested |

Definition at line 136 of file ExprConcepts.h.

## Constructor & Destructor Documentation

## ◆ Requirement()

clang::concepts::Requirement::Requirement | ( | RequirementKind | Kind,
|  | bool | IsDependent,
|  | bool | ContainsUnexpandedParameterPack,
|  | bool | IsSatisfied = `true`
| ) |  |
| inline

Definition at line 152 of file ExprConcepts.h.

## Member Function Documentation

## ◆ containsUnexpandedParameterPack()

bool clang::concepts::Requirement::containsUnexpandedParameterPack | ( |  | ) | const
| inline

Definition at line 178 of file ExprConcepts.h.

## ◆ getKind()

RequirementKind clang::concepts::Requirement::getKind | ( |  | ) | const
| inline

Definition at line 158 of file ExprConcepts.h.

Referenced by clang::concepts::TypeRequirement::classof(), clang::concepts::ExprRequirement::classof(), and clang::concepts::NestedRequirement::classof().

## ◆ isDependent()

bool clang::concepts::Requirement::isDependent | ( |  | ) | const
| inline

Definition at line 173 of file ExprConcepts.h.

## ◆ isSatisfied()

bool clang::concepts::Requirement::isSatisfied | ( |  | ) | const
| inline

Definition at line 160 of file ExprConcepts.h.

## ◆ setContainsUnexpandedParameterPack()

void clang::concepts::Requirement::setContainsUnexpandedParameterPack | ( | bool | Contains | ) |
| inline

Definition at line 175 of file ExprConcepts.h.

## ◆ setDependent()

void clang::concepts::Requirement::setDependent | ( | bool | IsDependent | ) |
| inline

Definition at line 172 of file ExprConcepts.h.

## ◆ setSatisfied()

void clang::concepts::Requirement::setSatisfied | ( | bool | IsSatisfied | ) |
| inline

Definition at line 166 of file ExprConcepts.h.

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

- include/clang/AST/ExprConcepts.h