The actual type of
the buffer object is set by a macro REST_PROCESS_BUFFER
when
inlining RESTProcess_base.h
A buffer type must conform to the
following generic interface
struct Buffer { struct Array; template <class T> SimpleBuffer& operator<<(const T&); template <class T> const SimpleBuffer& operator>>(T&) const; RESTProcessType::Type type() const; const Array& array() const };where
struct RESTProcessType { enum Type {boolean, int_number, float_number, string, array, object, null}; };and
Buffer::Array
must conform to
struct Buffer::Array { const Buffer2& operator[](size_t) const; size_t size() const; };where
Buffer2
is also a buffer concept, but not necessarily the
same type as Buffer
.