clang  3.9.0
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
clang::threadSafety::til::ValueType Struct Reference

ValueTypes are data types that can actually be held in registers. More...

#include <ThreadSafetyTIL.h>

Collaboration diagram for clang::threadSafety::til::ValueType:
[legend]

Public Types

enum  BaseType : unsigned char {
  BT_Void = 0, BT_Bool, BT_Int, BT_Float,
  BT_String, BT_Pointer, BT_ValueRef
}
 
enum  SizeType : unsigned char {
  ST_0 = 0, ST_1, ST_8, ST_16,
  ST_32, ST_64, ST_128
}
 

Public Member Functions

 ValueType (BaseType B, SizeType Sz, bool S, unsigned char VS)
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 
template<>
ValueType getValueType ()
 

Static Public Member Functions

static SizeType getSizeType (unsigned nbytes)
 
template<class T >
static ValueType getValueType ()
 

Public Attributes

BaseType Base
 
SizeType Size
 
bool Signed
 
unsigned char VectSize
 

Detailed Description

ValueTypes are data types that can actually be held in registers.

All variables and expressions must have a value type. Pointer types are further subdivided into the various heap-allocated types, such as functions, records, etc. Structured types that are passed by value (e.g. complex numbers) require special handling; they use BT_ValueRef, and size ST_0.

Definition at line 131 of file ThreadSafetyTIL.h.

Member Enumeration Documentation

Enumerator
BT_Void 
BT_Bool 
BT_Int 
BT_Float 
BT_String 
BT_Pointer 
BT_ValueRef 

Definition at line 132 of file ThreadSafetyTIL.h.

Enumerator
ST_0 
ST_1 
ST_8 
ST_16 
ST_32 
ST_64 
ST_128 

Definition at line 142 of file ThreadSafetyTIL.h.

Constructor & Destructor Documentation

clang::threadSafety::til::ValueType::ValueType ( BaseType  B,
SizeType  Sz,
bool  S,
unsigned char  VS 
)
inline

Definition at line 157 of file ThreadSafetyTIL.h.

Member Function Documentation

ValueType::SizeType clang::threadSafety::til::ValueType::getSizeType ( unsigned  nbytes)
inlinestatic

Definition at line 168 of file ThreadSafetyTIL.h.

References ST_0, ST_128, ST_16, ST_32, ST_64, and ST_8.

template<class T >
static ValueType clang::threadSafety::til::ValueType::getValueType ( )
inlinestatic
template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 181 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 186 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 191 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 196 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 201 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 206 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 211 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 216 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 221 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 226 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 231 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 236 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 241 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 246 of file ThreadSafetyTIL.h.

template<>
ValueType clang::threadSafety::til::ValueType::getValueType ( )
inline

Definition at line 251 of file ThreadSafetyTIL.h.

Member Data Documentation

BaseType clang::threadSafety::til::ValueType::Base
bool clang::threadSafety::til::ValueType::Signed
SizeType clang::threadSafety::til::ValueType::Size
unsigned char clang::threadSafety::til::ValueType::VectSize

Definition at line 164 of file ThreadSafetyTIL.h.


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