libqi-api  2.8.7.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
qi::TypeImpl< void > Class Template Reference

#include <typeimpl.hxx>

Public Member Functions

const TypeInfoinfo () override
 Get the TypeInfo corresponding to this type. More...
 
void * initializeStorage (void *ptr) override
 
void * ptrFromStorage (void **storage) override
 
void * clone (void *storage) override
 Allocate a storage and copy the value given as an argument. More...
 
void destroy (void *ptr) override
 Free all resources of a storage. More...
 
TypeKind kind () override
 
bool less (void *a, void *b) override
 
- Public Member Functions inherited from qi::TypeInterface
virtual ~TypeInterface ()=default
 
const char * infoString ()
 
qi::Signature signature (void *storage=nullptr, bool resolveDynamic=false)
 

Additional Inherited Members

- Static Public Member Functions inherited from qi::TypeInterface
static TypeInterfacefromSignature (const qi::Signature &sig)
 

Detailed Description

template<>
class qi::TypeImpl< void >

Definition at line 305 of file typeimpl.hxx.

Member Function Documentation

void* qi::TypeImpl< void >::clone ( void *  )
inlineoverridevirtual

Allocate a storage and copy the value given as an argument.

Implements qi::TypeInterface.

Definition at line 317 of file typeimpl.hxx.

void qi::TypeImpl< void >::destroy ( void *  )
inlineoverridevirtual

Free all resources of a storage.

Implements qi::TypeInterface.

Definition at line 318 of file typeimpl.hxx.

const TypeInfo& qi::TypeImpl< void >::info ( )
inlineoverridevirtual

Get the TypeInfo corresponding to this type.

Implements qi::TypeInterface.

Definition at line 308 of file typeimpl.hxx.

void* qi::TypeImpl< void >::initializeStorage ( void *  ptr)
inlineoverridevirtual

Initialize and return a new storage, from nothing or a T*.

If ptr is not null, it should be used as a storage (the method can usually just return ptr in that case).

Implements qi::TypeInterface.

Definition at line 315 of file typeimpl.hxx.

TypeKind qi::TypeImpl< void >::kind ( )
inlineoverridevirtual

Get the kind of the data.

This is used to downcast the TypeInterface object to a specialized interface.

Reimplemented from qi::TypeInterface.

Definition at line 319 of file typeimpl.hxx.

bool qi::TypeImpl< void >::less ( void *  a,
void *  b 
)
inlineoverridevirtual

Return true if a is less than b

Less must always work: compare pointers if you have to.

Implements qi::TypeInterface.

Definition at line 320 of file typeimpl.hxx.

void* qi::TypeImpl< void >::ptrFromStorage ( void **  )
inlineoverridevirtual

Get pointer to type from pointer to storage.

This allows for storing an integer value (for instance) directily into the pointer and avoid an allocation.

This method should be called on storage before casting it to a specific type.

Implements qi::TypeInterface.

Definition at line 316 of file typeimpl.hxx.


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