clang: include/clang/Basic/ExceptionSpecificationType.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

14#ifndef LLVM_CLANG_BASIC_EXCEPTIONSPECIFICATIONTYPE_H

15#define LLVM_CLANG_BASIC_EXCEPTIONSPECIFICATIONTYPE_H

16

18

19

21 EST_None,

24 EST_MSAny,

25 EST_NoThrow,

30 EST_Unevaluated,

34

37}

38

42}

43

47}

48

51}

52

56}

57

58

64

66

67

68 return CT1 > CT2 ? CT1 : CT2;

69}

70

71}

72

73#endif

The JSON file list parser is used to communicate input to InstallAPI.

CanThrowResult

Possible results from evaluation of a noexcept expression.

bool isDynamicExceptionSpec(ExceptionSpecificationType ESpecType)

bool isUnresolvedExceptionSpec(ExceptionSpecificationType ESpecType)

CanThrowResult mergeCanThrow(CanThrowResult CT1, CanThrowResult CT2)

bool isComputedNoexcept(ExceptionSpecificationType ESpecType)

bool isNoexceptExceptionSpec(ExceptionSpecificationType ESpecType)

bool isExplicitThrowExceptionSpec(ExceptionSpecificationType ESpecType)

ExceptionSpecificationType

The various types of exception specifications that exist in C++11.

@ EST_DependentNoexcept

noexcept(expression), value-dependent

@ EST_Uninstantiated

not instantiated yet

@ EST_Unparsed

not parsed yet

@ EST_NoThrow

Microsoft __declspec(nothrow) extension.

@ EST_None

no exception specification

@ EST_MSAny

Microsoft throw(...) extension.

@ EST_BasicNoexcept

noexcept

@ EST_NoexceptFalse

noexcept(expression), evals to 'false'

@ EST_Unevaluated

not evaluated yet, for special member function

@ EST_NoexceptTrue

noexcept(expression), evals to 'true'

@ EST_Dynamic

throw(T1, T2)