VectorParser container wrapper. More...
#include <senf/Packets/VectorParser.hh>
Public Types | |
typedef VectorParser< ElementParser, AuxPolicy > | parser_type |
typedef PacketParserBase::data_iterator | data_iterator |
typedef PacketParserBase::size_type | size_type |
typedef PacketParserBase::difference_type | difference_type |
typedef ElementParser | value_type |
typedef detail::ArrayParser_iterator< value_type > | iterator |
typedef iterator | const_iterator |
typedef PacketParserBase::state_type | state_type |
Structors and default members | |
VectorParser_Container (parser_type const &vector) | |
Accessors | |
size_type | size () const |
bool | empty () const |
iterator | begin () const |
iterator | end () const |
value_type | operator[] (difference_type i) const |
value_type | front () const |
value_type | back () const |
Mutators | |
iterator | shift (iterator pos, size_type n=1) |
template<class Value > | |
void | insert (iterator pos, Value const &t) |
template<class Value > | |
void | insert (iterator pos, size_type n, Value const &t) |
template<class ForwardIterator > | |
void | insert (iterator pos, ForwardIterator f, ForwardIterator l) |
void | erase (iterator pos, size_type n=1) |
void | erase (iterator f, iterator l) |
void | clear () |
template<class Value > | |
void | push_back (Value const &value, size_type n=1) |
value_type | push_back_space (size_type n=1) |
template<class Value > | |
void | push_front (Value const &value, size_type n=1) |
value_type | push_front_space (size_type n=1) |
void | resize (size_type n) |
template<class Value > | |
void | resize (size_type n, Value value) |
Parser interface | |
parser_type | parser () const |
data_iterator | i () const |
state_type | state () const |
PacketData & | data () const |
size_type | bytes () const |
void | init () const |
VectorParser container wrapper.
This is the container wrapper used for vector parsers. The container wrapper will stay valid after changing the collection. However the container still depends on the packet and will be invalidated if the Packet is deallocated or if the packet size is changed from without the container wrapper (more precisely, it is invalidated if the insertion/deletion happens before the vector in the packet data).
The vector container wrapper provides a complete STL random-access sequence interface.
\see VectorParser
Definition at line 31 of file VectorParser.hh.
typedef iterator senf::VectorParser_Container< ElementParser, AuxPolicy >::const_iterator |
Definition at line 146 of file VectorParser.hh.
typedef PacketParserBase::data_iterator senf::VectorParser_Container< ElementParser, AuxPolicy >::data_iterator |
Definition at line 141 of file VectorParser.hh.
typedef PacketParserBase::difference_type senf::VectorParser_Container< ElementParser, AuxPolicy >::difference_type |
Definition at line 143 of file VectorParser.hh.
typedef detail::ArrayParser_iterator<value_type> senf::VectorParser_Container< ElementParser, AuxPolicy >::iterator |
Definition at line 145 of file VectorParser.hh.
typedef VectorParser<ElementParser,AuxPolicy> senf::VectorParser_Container< ElementParser, AuxPolicy >::parser_type |
Definition at line 140 of file VectorParser.hh.
typedef PacketParserBase::size_type senf::VectorParser_Container< ElementParser, AuxPolicy >::size_type |
Definition at line 142 of file VectorParser.hh.
typedef PacketParserBase::state_type senf::VectorParser_Container< ElementParser, AuxPolicy >::state_type |
Definition at line 147 of file VectorParser.hh.
typedef ElementParser senf::VectorParser_Container< ElementParser, AuxPolicy >::value_type |
Definition at line 144 of file VectorParser.hh.
senf::VectorParser_Container< ElementParser, AuxPolicy >::VectorParser_Container | ( | parser_type const & | vector | ) |
value_type senf::VectorParser_Container< ElementParser, AuxPolicy >::back | ( | ) | const |
iterator senf::VectorParser_Container< ElementParser, AuxPolicy >::begin | ( | ) | const |
size_type senf::VectorParser_Container< ElementParser, AuxPolicy >::bytes | ( | ) | const |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::clear | ( | ) |
PacketData& senf::VectorParser_Container< ElementParser, AuxPolicy >::data | ( | ) | const |
bool senf::VectorParser_Container< ElementParser, AuxPolicy >::empty | ( | ) | const |
iterator senf::VectorParser_Container< ElementParser, AuxPolicy >::end | ( | ) | const |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::erase | ( | iterator | pos, |
size_type | n = 1 |
||
) |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::erase | ( | iterator | f, |
iterator | l | ||
) |
value_type senf::VectorParser_Container< ElementParser, AuxPolicy >::front | ( | ) | const |
data_iterator senf::VectorParser_Container< ElementParser, AuxPolicy >::i | ( | ) | const |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::init | ( | ) | const |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::insert | ( | iterator | pos, |
Value const & | t | ||
) |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::insert | ( | iterator | pos, |
size_type | n, | ||
Value const & | t | ||
) |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::insert | ( | iterator | pos, |
ForwardIterator | f, | ||
ForwardIterator | l | ||
) |
value_type senf::VectorParser_Container< ElementParser, AuxPolicy >::operator[] | ( | difference_type | i | ) | const |
parser_type senf::VectorParser_Container< ElementParser, AuxPolicy >::parser | ( | ) | const |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::push_back | ( | Value const & | value, |
size_type | n = 1 |
||
) |
value_type senf::VectorParser_Container< ElementParser, AuxPolicy >::push_back_space | ( | size_type | n = 1 | ) |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::push_front | ( | Value const & | value, |
size_type | n = 1 |
||
) |
value_type senf::VectorParser_Container< ElementParser, AuxPolicy >::push_front_space | ( | size_type | n = 1 | ) |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::resize | ( | size_type | n | ) |
void senf::VectorParser_Container< ElementParser, AuxPolicy >::resize | ( | size_type | n, |
Value | value | ||
) |
iterator senf::VectorParser_Container< ElementParser, AuxPolicy >::shift | ( | iterator | pos, |
size_type | n = 1 |
||
) |
size_type senf::VectorParser_Container< ElementParser, AuxPolicy >::size | ( | ) | const |
state_type senf::VectorParser_Container< ElementParser, AuxPolicy >::state | ( | ) | const |