Classes | Namespaces | Typedefs | Functions
value_store.h File Reference
#include <typeinfo>
#include <new>
#include "detail/value_store.h"
Include dependency graph for value_store.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ProgramOptions::bad_value_cast
struct  ProgramOptions::detail::bool2type< bool >
struct  ProgramOptions::detail::OptVTable< T >
class  ProgramOptions::ValueStore
 A type that can hold any kind of value type. More...
struct  ProgramOptions::detail::VTable< T >

Namespaces

namespace  ProgramOptions
namespace  ProgramOptions::detail

Typedefs

typedef void(* ProgramOptions::detail::vcall_type )(const void *in, void **out)
typedef vtable_type * ProgramOptions::detail::vptr_type
typedef vcall_type ProgramOptions::detail::vtable_type [4]

Functions

template<class T >
vptr_type ProgramOptions::detail::base_vtable (const T *=0)
template<class T >
const T * ProgramOptions::unsafe_value_cast (const ValueStore *v, const T *=0)
 Extracts a typed value from a ValueStore *without* checking if the type matches.
template<class T >
T * ProgramOptions::unsafe_value_cast (ValueStore *v, const T *p=0)
template<class T >
const T & ProgramOptions::value_cast (const ValueStore &v, const T *=0)
 Extracts a typed value from a ValueStore.
template<class T >
const T * ProgramOptions::value_cast (const ValueStore *v, const T *=0)
 Returns 0 on error.
template<class T >
T & ProgramOptions::value_cast (ValueStore &v, const T *p=0)
template<class T >
T * ProgramOptions::value_cast (ValueStore *v, const T *p=0)
template<class T >
vptr_type ProgramOptions::detail::vtable (const T *=0)
template<class T >
vptr_type ProgramOptions::detail::vtable_select (bool2type< 0 >, const T *=0)
template<class T >
vptr_type ProgramOptions::detail::vtable_select (bool2type< 1 >, const T *=0)


clasp
Author(s): Benjamin Kaufmann
autogenerated on Thu Aug 27 2015 12:41:40