Classdesc 3.44
|
same as RESTProcessObject, but internally stores the object. T must be copy constructible or moveable More...
#include <RESTProcess_base.h>
Public Member Functions | |
template<class... Args> | |
RESTProcessValueObject (Args &&... args) | |
Public Member Functions inherited from RESTProcessObject< T > | |
RESTProcessObject (T &obj) | |
std::shared_ptr< classdesc::RESTProcessBase > | process (const string &remainder, const REST_PROCESS_BUFFER &arguments) override |
REST_PROCESS_BUFFER | asBuffer () const override |
std::vector< Signature > | signature () const override |
return signature(s) of the operations | |
RESTProcess_t | list () const override |
return list of subcommands to this | |
std::string | type () const override |
return type name of this | |
void | populate (RESTProcess_t &map) const override |
populate map from the object wrapped by this, if any | |
object * | getClassdescObject () override |
returns a classdesc object if referring to an object derived from classdesc::object | |
bool | isObject () const override |
const object * | getConstClassdescObject () override |
bool | isConst () const override |
true if this is a const object, a const member function or static/free function | |
size_t | size () const override |
size if this is a container, 0 otherwise | |
RPPtr | getElem (const REST_PROCESS_BUFFER &b) override |
get element by position for sequences, by key for associative containers | |
RPPtr | setElem (const REST_PROCESS_BUFFER &b, const REST_PROCESS_BUFFER &value) override |
Public Member Functions inherited from RESTProcessBase | |
template<class F> | |
Signature | functionSignature () const |
return signature for a function type F | |
template<class T> | |
T * | getObject () |
returns a pointer to the underlying object if it is one of type T, otherwise null | |
virtual unsigned | arity () const |
arity if this is a function, 0 otherwise | |
virtual void | insert (const REST_PROCESS_BUFFER &value) |
append to end of a sequence, or inserts key into an associative container | |
virtual void | erase (const REST_PROCESS_BUFFER &index) |
erase an element - by position for sequences, by key for associative containers | |
virtual bool | contains (const REST_PROCESS_BUFFER &key) const |
returns true if an associative container contains key | |
virtual RPPtr | keys () const |
returns a list of keys if this is an associative container, otherwise void |
Public Attributes | |
T | actual |
Public Attributes inherited from RESTProcessObject< T > | |
T & | obj |
Additional Inherited Members | |
Protected Member Functions inherited from RESTProcessBase | |
template<class T> | |
enable_if< is_base_of< object, T >, constobject * >::T | getClassdescObjectImpl (T &obj) |
implementation of upcasting to a classdesc::object | |
template<class T> | |
enable_if< Not< is_base_of< object, T > >, constobject * >::T | getClassdescObjectImpl (T &obj) |
same as RESTProcessObject, but internally stores the object. T must be copy constructible or moveable