XB Library: xb::parser::raw

The raw parser functions are very simple routines that writes element contents to or retrieves it from a source/target represented by an object of class implementing the xb::alias (xb::const_alias) interface.


namespace xb {
namespace parser {
namespace raw {

    void write (const xb::element &, xb::alias & output) throw ();
    xb::element parse (xb::const_alias & input, xb::size_type length,
                       xb::size_type * motion = 0) throw ();



This function serializes the content of an XB element (the first parameter) into the output alias. The second parameter (output) is a reference to an object that implements the xb::alias interface. Upon exiting, the alias points to first byte after the encoded data.


This function reads length bytes (or less if not available) of data from the input alias and returns it as an XB element. The input is a reference to an object that implements the xb::const_alias interface). It is updated to point to first byte after the element.

If the motion pointer is used (not null), the variable it points to is incremented of number of bytes parsed by this function.