clang 20.0.0git
Public Member Functions | List of all members
clang::Sema::ImplicitExceptionSpecification Class Reference

Helper class that collects exception specifications for implicitly-declared special member functions. More...

#include "clang/Sema/Sema.h"

Public Member Functions

 ImplicitExceptionSpecification (Sema &Self)
 
ExceptionSpecificationType getExceptionSpecType () const
 Get the computed exception specification type.
 
unsigned size () const
 The number of exceptions in the exception specification.
 
const QualTypedata () const
 The set of exceptions in the exception specification.
 
void CalledDecl (SourceLocation CallLoc, const CXXMethodDecl *Method)
 Integrate another called method into the collected data.
 
void CalledExpr (Expr *E)
 Integrate an invoked expression into the collected data.
 
void CalledStmt (Stmt *S)
 Integrate an invoked statement into the collected data.
 
FunctionProtoType::ExceptionSpecInfo getExceptionSpec () const
 Overwrite an EPI's exception specification with this computed exception specification.
 

Detailed Description

Helper class that collects exception specifications for implicitly-declared special member functions.

Definition at line 5004 of file Sema.h.

Constructor & Destructor Documentation

◆ ImplicitExceptionSpecification()

clang::Sema::ImplicitExceptionSpecification::ImplicitExceptionSpecification ( Sema Self)
inlineexplicit

Definition at line 5023 of file Sema.h.

References clang::EST_BasicNoexcept, and clang::EST_DynamicNone.

Member Function Documentation

◆ CalledDecl()

void Sema::ImplicitExceptionSpecification::CalledDecl ( SourceLocation  CallLoc,
const CXXMethodDecl Method 
)

◆ CalledExpr()

void clang::Sema::ImplicitExceptionSpecification::CalledExpr ( Expr E)
inline

Integrate an invoked expression into the collected data.

Definition at line 5046 of file Sema.h.

References E.

◆ CalledStmt()

void Sema::ImplicitExceptionSpecification::CalledStmt ( Stmt S)

Integrate an invoked statement into the collected data.

Definition at line 254 of file SemaDeclCXX.cpp.

References clang::EST_MSAny, clang::EST_None, and clang::Self.

Referenced by ComputeDefaultedComparisonExceptionSpec().

◆ data()

const QualType * clang::Sema::ImplicitExceptionSpecification::data ( ) const
inline

The set of exceptions in the exception specification.

Definition at line 5040 of file Sema.h.

◆ getExceptionSpec()

FunctionProtoType::ExceptionSpecInfo clang::Sema::ImplicitExceptionSpecification::getExceptionSpec ( ) const
inline

Overwrite an EPI's exception specification with this computed exception specification.

C++11 [except.spec]p14: The exception-specification is noexcept(false) if the set of potential exceptions of the special member function contains "any"

Definition at line 5053 of file Sema.h.

References clang::EST_Dynamic, clang::EST_NoexceptFalse, clang::EST_None, clang::FunctionProtoType::ExceptionSpecInfo::Exceptions, clang::FunctionProtoType::ExceptionSpecInfo::NoexceptExpr, and clang::FunctionProtoType::ExceptionSpecInfo::Type.

◆ getExceptionSpecType()

ExceptionSpecificationType clang::Sema::ImplicitExceptionSpecification::getExceptionSpecType ( ) const
inline

Get the computed exception specification type.

Definition at line 5030 of file Sema.h.

References clang::isComputedNoexcept().

◆ size()

unsigned clang::Sema::ImplicitExceptionSpecification::size ( ) const
inline

The number of exceptions in the exception specification.

Definition at line 5037 of file Sema.h.


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