clang API Documentation

Classes | Namespaces | Enumerations | Functions
Specifiers.h File Reference

Defines various enumerations that describe declaration and type specifiers. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  clang::WrittenBuiltinSpecs
 Structure that packs information about the type specifiers that were written in a particular type specifier sequence. More...

Namespaces

namespace  clang

Enumerations

enum  clang::TypeSpecifierWidth { clang::TSW_unspecified, clang::TSW_short, clang::TSW_long, clang::TSW_longlong }
 Specifies the width of a type, e.g., short, long, or long long. More...
enum  clang::TypeSpecifierSign { clang::TSS_unspecified, clang::TSS_signed, clang::TSS_unsigned }
 Specifies the signedness of a type, e.g., signed or unsigned. More...
enum  clang::TypeSpecifierType {
  clang::TST_unspecified, clang::TST_void, clang::TST_char, clang::TST_wchar,
  clang::TST_char16, clang::TST_char32, clang::TST_int, clang::TST_int128,
  clang::TST_half, clang::TST_float, clang::TST_double, clang::TST_bool,
  clang::TST_decimal32, clang::TST_decimal64, clang::TST_decimal128, clang::TST_enum,
  clang::TST_union, clang::TST_struct, clang::TST_class, clang::TST_interface,
  clang::TST_typename, clang::TST_typeofType, clang::TST_typeofExpr, clang::TST_decltype,
  clang::TST_underlyingType, clang::TST_auto, clang::TST_decltype_auto, clang::TST_unknown_anytype,
  clang::TST_atomic, clang::TST_error
}
 Specifies the kind of type. More...
enum  clang::AccessSpecifier { clang::AS_public, clang::AS_protected, clang::AS_private, clang::AS_none }
 A C++ access specifier (public, private, protected), plus the special value "none" which means different things in different contexts. More...
enum  clang::ExprValueKind { clang::VK_RValue, clang::VK_LValue, clang::VK_XValue }
 The categorization of expression values, currently following the C++11 scheme. More...
enum  clang::ExprObjectKind {
  clang::OK_Ordinary, clang::OK_BitField, clang::OK_VectorComponent, clang::OK_ObjCProperty,
  clang::OK_ObjCSubscript
}
 A further classification of the kind of object referenced by an l-value or x-value. More...
enum  clang::TemplateSpecializationKind {
  clang::TSK_Undeclared = 0, clang::TSK_ImplicitInstantiation, clang::TSK_ExplicitSpecialization, clang::TSK_ExplicitInstantiationDeclaration,
  clang::TSK_ExplicitInstantiationDefinition
}
 Describes the kind of template specialization that a particular template specialization declaration represents. More...
enum  clang::ThreadStorageClassSpecifier { clang::TSCS_unspecified, clang::TSCS___thread, clang::TSCS_thread_local, clang::TSCS__Thread_local }
 Thread storage-class-specifier. More...
enum  clang::StorageClass {
  clang::SC_None, clang::SC_Extern, clang::SC_Static, clang::SC_PrivateExtern,
  clang::SC_OpenCLWorkGroupLocal, clang::SC_Auto, clang::SC_Register
}
 Storage classes. More...
enum  clang::InClassInitStyle { clang::ICIS_NoInit, clang::ICIS_CopyInit, clang::ICIS_ListInit }
 In-class initialization styles for non-static data members. More...
enum  clang::CallingConv {
  clang::CC_C, clang::CC_X86StdCall, clang::CC_X86FastCall, clang::CC_X86ThisCall,
  clang::CC_X86VectorCall, clang::CC_X86Pascal, clang::CC_X86_64Win64, clang::CC_X86_64SysV,
  clang::CC_AAPCS, clang::CC_AAPCS_VFP, clang::CC_PnaclCall, clang::CC_IntelOclBicc
}
 CallingConv - Specifies the calling convention that a function uses. More...
enum  clang::StorageDuration {
  clang::SD_FullExpression, clang::SD_Automatic, clang::SD_Thread, clang::SD_Static,
  clang::SD_Dynamic
}
 The storage duration for an object (per C++ [basic.stc]). More...

Functions

bool clang::isTemplateInstantiation (TemplateSpecializationKind Kind)
 Determine whether this template specialization kind refers to an instantiation of an entity (as opposed to a non-template or an explicit specialization).
bool clang::isLegalForFunction (StorageClass SC)
 Checks whether the given storage class is legal for functions.
bool clang::isLegalForVariable (StorageClass SC)
 Checks whether the given storage class is legal for variables.
bool clang::supportsVariadicCall (CallingConv CC)
 Checks whether the given calling convention supports variadic calls. Unprototyped calls also use the variadic call rules.

Detailed Description

Defines various enumerations that describe declaration and type specifiers.

Definition in file Specifiers.h.