libqi-api
2.8.7.4
|
#include <typeinterface.hpp>
Public Types | |
using | RawString = std::pair< char *, size_t > |
using | Deleter = boost::function< void(const RawString &)> |
using | ManagedRawString = std::pair< RawString, Deleter > |
Public Member Functions | |
std::string | getString (void *storage) |
Get a copy of the string value. More... | |
virtual ManagedRawString | get (void *storage)=0 |
void | set (void **storage, const std::string &value) |
Set the value of the string. More... | |
virtual void | set (void **storage, const char *ptr, size_t sz)=0 |
Set the value of the string. More... | |
TypeKind | kind () override |
![]() | |
virtual | ~TypeInterface ()=default |
virtual const TypeInfo & | info ()=0 |
Get the TypeInfo corresponding to this type. More... | |
virtual void * | initializeStorage (void *ptr=nullptr)=0 |
virtual void * | ptrFromStorage (void **)=0 |
virtual void * | clone (void *)=0 |
Allocate a storage and copy the value given as an argument. More... | |
virtual void | destroy (void *)=0 |
Free all resources of a storage. More... | |
virtual bool | less (void *a, void *b)=0 |
const char * | infoString () |
qi::Signature | signature (void *storage=nullptr, bool resolveDynamic=false) |
Additional Inherited Members | |
![]() | |
static TypeInterface * | fromSignature (const qi::Signature &sig) |
Definition at line 104 of file typeinterface.hpp.
using qi::StringTypeInterface::Deleter = boost::function<void(const RawString&)> |
Definition at line 108 of file typeinterface.hpp.
using qi::StringTypeInterface::ManagedRawString = std::pair<RawString, Deleter> |
Definition at line 109 of file typeinterface.hpp.
using qi::StringTypeInterface::RawString = std::pair<char*, size_t> |
Definition at line 107 of file typeinterface.hpp.
|
pure virtual |
Get the internal string representation as UTF-8. It may or may not be a copy.
Implemented in qi::TypeEquivalentString< T, F >, qi::TypeImpl< char[I]>, qi::TypeCStringImpl, and qi::StringTypeInterfaceImpl.
|
inline |
Get a copy of the string value.
Definition at line 16 of file stringtypeinterface.hxx.
|
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 120 of file typeinterface.hpp.
|
inline |
Set the value of the string.
Definition at line 25 of file stringtypeinterface.hxx.
|
pure virtual |
Set the value of the string.
Implemented in qi::TypeEquivalentString< T, F >, qi::TypeImpl< char[I]>, qi::TypeCStringImpl, and qi::StringTypeInterfaceImpl.