Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
Realm::Type Class Reference

#include <codedesc.h>

Inheritance diagram for Realm::Type:
Collaboration diagram for Realm::Type:

Classes

struct  CommonFields
 
struct  FloatingPointFields
 
struct  FunctionPointerFields
 
struct  IntegerFields
 
struct  OpaqueFields
 
struct  PointerFields
 

Public Types

enum  Kind { InvalidKind }
 

Public Member Functions

 Type (void)
 
 Type (const Type &rhs)
 
Typeoperator= (const Type &rhs)
 
 ~Type (void)
 
bool operator== (const Type &rhs) const
 
bool operator!= (const Type &rhs) const
 
bool is_valid (void) const
 
template<typename T >
bool is (void) const
 
template<typename T >
T & as (void)
 
template<typename T >
const T & as (void) const
 
size_t & size_bits (void)
 
const size_t & size_bits (void) const
 
size_t & alignment_bits (void)
 
const size_t & alignment_bits (void) const
 

Static Public Member Functions

template<typename T >
static Type from_cpp_type (void)
 
template<typename T >
static Type from_cpp_value (const T &value)
 

Protected Member Functions

void destroy (void)
 
void copy_from (const Type &rhs)
 
 Type (Kind _kind, size_t _size_bits, size_t _alignment_bits)
 

Protected Attributes

union { 
 
   CommonFields   f_common 
 
};  
 

Friends

std::ostream & operator<< (std::ostream &os, const Type &t)
 
template<typename S >
bool serialize (S &os, const Type &t)
 
template<typename S >
bool deserialize (S &os, Type &t)
 

Member Enumeration Documentation

◆ Kind

Enumerator
InvalidKind 

Constructor & Destructor Documentation

◆ Type() [1/3]

Realm::Type::Type ( void  )

◆ Type() [2/3]

Realm::Type::Type ( const Type rhs)

◆ ~Type()

Realm::Type::~Type ( void  )

◆ Type() [3/3]

Realm::Type::Type ( Kind  _kind,
size_t  _size_bits,
size_t  _alignment_bits 
)
protected

Member Function Documentation

◆ alignment_bits() [1/2]

size_t & Realm::Type::alignment_bits ( void  )

◆ alignment_bits() [2/2]

const size_t & Realm::Type::alignment_bits ( void  ) const

◆ as() [1/2]

template<typename T >
T & Realm::Type::as ( void  )

◆ as() [2/2]

template<typename T >
const T & Realm::Type::as ( void  ) const

◆ copy_from()

void Realm::Type::copy_from ( const Type rhs)
protected

◆ destroy()

void Realm::Type::destroy ( void  )
protected

◆ from_cpp_type()

template<typename T >
static Type Realm::Type::from_cpp_type ( void  )
static

◆ from_cpp_value()

template<typename T >
static Type Realm::Type::from_cpp_value ( const T &  value)
static

◆ is()

template<typename T >
bool Realm::Type::is ( void  ) const

◆ is_valid()

bool Realm::Type::is_valid ( void  ) const

◆ operator!=()

bool Realm::Type::operator!= ( const Type rhs) const

◆ operator=()

Type & Realm::Type::operator= ( const Type rhs)

◆ operator==()

bool Realm::Type::operator== ( const Type rhs) const

◆ size_bits() [1/2]

size_t & Realm::Type::size_bits ( void  )

◆ size_bits() [2/2]

const size_t & Realm::Type::size_bits ( void  ) const

Friends And Related Symbol Documentation

◆ deserialize

template<typename S >
bool deserialize ( S &  os,
Type t 
)
friend

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const Type t 
)
friend

◆ serialize

template<typename S >
bool serialize ( S &  os,
const Type t 
)
friend

Member Data Documentation

◆ [union]

union { ... } Realm::Type

◆ f_common

CommonFields Realm::Type::f_common

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