X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FPackets%2FListParser.hh;h=709ed0dbf1b79aa5d211c4a1a9008dfa9cbab674;hb=84f14a42f9993e186c7897ce0db021300e0a2d48;hp=3b26dadb09b42a31a4fa351f5d992f7ac620e802;hpb=8170f9bdf8fae3d9f16b20e04bdea7770280ccf0;p=senf.git diff --git a/senf/Packets/ListParser.hh b/senf/Packets/ListParser.hh index 3b26dad..709ed0d 100644 --- a/senf/Packets/ListParser.hh +++ b/senf/Packets/ListParser.hh @@ -62,8 +62,8 @@ namespace senf { API however you will need to instantiate a container wrapper for the list. See \ref packet_usage_fields_collection. - \see - \ref How to access \ref packet_usage_fields_collection + \see + How to access \ref packet_usage_fields_collection \n SENF_PARSER_LIST() macro used to define list fields \n ListParser_Container list container wrapper API \n ExampleListPolicy @@ -102,9 +102,9 @@ namespace senf { value_type back() const; template void push_back (Value const & value, size_type n=1) const; - void push_back_space (size_type n=1) const; + value_type push_back_space (size_type n=1) const; template void push_front (Value const & value, size_type n=1) const; - void push_front_space (size_type n=1) const; + value_type push_front_space (size_type n=1) const; void resize (size_type n) const; template void resize (size_type n, Value value) const; @@ -183,7 +183,7 @@ namespace senf { ///@{ // All these operations can be quite inefficient depending on the list type - void shift(iterator pos, size_type n=1); + value_type shift(iterator pos, size_type n=1); template void insert(iterator pos, Value const & t); template @@ -201,10 +201,10 @@ namespace senf { void clear(); template void push_back (Value const & value, size_type n=1); - void push_back_space (size_type n=1); + value_type push_back_space (size_type n=1); template void push_front (Value const & value, size_type n=1); - void push_front_space (size_type n=1); - void resize (size_type n); + value_type push_front_space (size_type n=1); + void resize (size_type n); template void resize (size_type n, Value value); ///@} @@ -240,7 +240,7 @@ namespace senf { // Define the list SENF_PARSER_LIST ( list, list_size_, EltParser ); \endcode - + Here \c EltParser can be an arbitrary parser and need not have a fixed size. \warning Realize, that the \a size field is controlled by the list parser. This field @@ -261,7 +261,7 @@ namespace senf { \c transform(\a transform, \c bytes(\a size))The \a transform is applied to the \a size value. The value is then interpreted containing the list size in bytes not - number of elements + number of elements The optional \a transform is a class with the following layout @@ -272,7 +272,7 @@ namespace senf { static value_type get(other_type v); static other_type set(value_type v); }; - \endcode + \endcode \c other_type is \a size ::\c value_type, the type of the value returned by the \a size field, whereas the \c value_type typedef is the arbitrary return type of the transform. @@ -297,7 +297,7 @@ namespace senf { \param[in] size name of field giving the list size \param[in] elt_type list element type - \see + \see How to use \ref packet_usage_fields_collection \n senf::ListParser the list parser API for list field access senf::ListParser_Container the list parser container API for list field access