clang  12.0.0git
Public Member Functions | Public Attributes | List of all members
clang::concepts::ExprRequirement::ReturnTypeRequirement Class Reference

#include "clang/AST/ExprConcepts.h"

Collaboration diagram for clang::concepts::ExprRequirement::ReturnTypeRequirement:
Collaboration graph
[legend]

Public Member Functions

 ReturnTypeRequirement ()
 No return type requirement was specified. More...
 
 ReturnTypeRequirement (SubstitutionDiagnostic *SubstDiag)
 A return type requirement was specified but it was a substitution failure. More...
 
 ReturnTypeRequirement (TemplateParameterList *TPL)
 A 'type constraint' style return type requirement. More...
 
bool isDependent () const
 
bool containsUnexpandedParameterPack () const
 
bool isEmpty () const
 
bool isSubstitutionFailure () const
 
bool isTypeConstraint () const
 
SubstitutionDiagnostic * getSubstitutionDiagnostic () const
 
const TypeConstraintgetTypeConstraint () const
 
TemplateParameterListgetTypeConstraintTemplateParameterList () const
 

Public Attributes

friend ASTStmtReader
 
friend ASTStmtWriter
 

Detailed Description

Definition at line 264 of file ExprConcepts.h.

Constructor & Destructor Documentation

◆ ReturnTypeRequirement() [1/3]

clang::concepts::ExprRequirement::ReturnTypeRequirement::ReturnTypeRequirement ( )
inline

No return type requirement was specified.

Definition at line 274 of file ExprConcepts.h.

Referenced by clang::concepts::ExprRequirement::ExprRequirement().

◆ ReturnTypeRequirement() [2/3]

clang::concepts::ExprRequirement::ReturnTypeRequirement::ReturnTypeRequirement ( SubstitutionDiagnostic *  SubstDiag)
inline

A return type requirement was specified but it was a substitution failure.

Definition at line 278 of file ExprConcepts.h.

◆ ReturnTypeRequirement() [3/3]

concepts::ExprRequirement::ReturnTypeRequirement::ReturnTypeRequirement ( TemplateParameterList TPL)

A 'type constraint' style return type requirement.

Parameters
TPLan invented template parameter list containing a single type parameter with a type-constraint.

Definition at line 1046 of file SemaConcept.cpp.

References clang::TemplateParameterList::getParam(), getTypeConstraint(), and clang::TemplateParameterList::size().

Member Function Documentation

◆ containsUnexpandedParameterPack()

bool clang::concepts::ExprRequirement::ReturnTypeRequirement::containsUnexpandedParameterPack ( ) const
inline

Definition at line 293 of file ExprConcepts.h.

◆ getSubstitutionDiagnostic()

SubstitutionDiagnostic* clang::concepts::ExprRequirement::ReturnTypeRequirement::getSubstitutionDiagnostic ( ) const
inline

Definition at line 314 of file ExprConcepts.h.

◆ getTypeConstraint()

const TypeConstraint * concepts::ExprRequirement::ReturnTypeRequirement::getTypeConstraint ( ) const

◆ getTypeConstraintTemplateParameterList()

TemplateParameterList* clang::concepts::ExprRequirement::ReturnTypeRequirement::getTypeConstraintTemplateParameterList ( ) const
inline

Definition at line 321 of file ExprConcepts.h.

◆ isDependent()

bool clang::concepts::ExprRequirement::ReturnTypeRequirement::isDependent ( ) const
inline

Definition at line 289 of file ExprConcepts.h.

◆ isEmpty()

bool clang::concepts::ExprRequirement::ReturnTypeRequirement::isEmpty ( ) const
inline

Definition at line 300 of file ExprConcepts.h.

Referenced by clang::concepts::ExprRequirement::ExprRequirement().

◆ isSubstitutionFailure()

bool clang::concepts::ExprRequirement::ReturnTypeRequirement::isSubstitutionFailure ( ) const
inline

Definition at line 304 of file ExprConcepts.h.

◆ isTypeConstraint()

bool clang::concepts::ExprRequirement::ReturnTypeRequirement::isTypeConstraint ( ) const
inline

Definition at line 309 of file ExprConcepts.h.

Member Data Documentation

◆ ASTStmtReader

friend clang::concepts::ExprRequirement::ReturnTypeRequirement::ASTStmtReader

Definition at line 270 of file ExprConcepts.h.

◆ ASTStmtWriter

friend clang::concepts::ExprRequirement::ReturnTypeRequirement::ASTStmtWriter

Definition at line 271 of file ExprConcepts.h.


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