#include <senf/Packets/ListParser.hh>
This is the container wrapper used for list 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.
SomePacket p (...); SomePacket::aListCollection_t::container c (p->aListCollection()); c.insert(c.begin(), ... );
Definition at line 137 of file ListParser.hh.
Public Types |
|
typedef ListPolicy | policy |
typedef ListPolicy::parser_type | parser_type |
typedef PacketParserBase::data_iterator |
data_iterator |
typedef PacketParserBase::size_type | size_type |
typedef PacketParserBase::difference_type |
difference_type |
typedef ListPolicy::element_type | value_type |
typedef detail::ListParser_Iterator < ListParser_Container > |
iterator |
typedef iterator | const_iterator |
typedef PacketParserBase::state_type |
state_type |
Structors and default members |
|
ListParser_Container (parser_type const &list) | |
~ListParser_Container () | |
Accessors |
|
size_type | size () const |
bool | empty () const |
iterator | begin () const |
iterator | end () const |
value_type | front () const |
value_type | back () const |
Mutators |
|
value_type | 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 |
typedef iterator senf::ListParser_Container< ListPolicy >:: | ||||
const_iterator | ||||
Definition at line 151 of file ListParser.hh.
typedef PacketParserBase::data_iterator senf::ListParser_Container< ListPolicy >:: | ||||
data_iterator | ||||
Definition at line 146 of file ListParser.hh.
typedef PacketParserBase::difference_type senf::ListParser_Container< ListPolicy >:: | ||||
difference_type | ||||
Definition at line 148 of file ListParser.hh.
typedef detail::ListParser_Iterator<ListParser_Container> senf::ListParser_Container< ListPolicy >:: | ||||
iterator | ||||
Definition at line 150 of file ListParser.hh.
typedef ListPolicy::parser_type senf::ListParser_Container< ListPolicy >:: | ||||
parser_type | ||||
Definition at line 145 of file ListParser.hh.
typedef ListPolicy senf::ListParser_Container< ListPolicy >:: | ||||
policy | ||||
Definition at line 144 of file ListParser.hh.
typedef PacketParserBase::size_type senf::ListParser_Container< ListPolicy >:: | ||||
size_type | ||||
Definition at line 147 of file ListParser.hh.
typedef PacketParserBase::state_type senf::ListParser_Container< ListPolicy >:: | ||||
state_type | ||||
Definition at line 152 of file ListParser.hh.
typedef ListPolicy::element_type senf::ListParser_Container< ListPolicy >:: | ||||
value_type | ||||
Definition at line 149 of file ListParser.hh.
senf::ListParser_Container< ListPolicy >:: | ||||
ListParser_Container | ( | parser_type const & | list | ) |
Definition at line 224 of file ListParser.cti.
senf::ListParser_Container< ListPolicy >::~ | ||||
~ListParser_Container | () | |||
Definition at line 232 of file ListParser.cti.
senf::ListParser_Container< ListPolicy >::value_type senf::ListParser_Container< ListPolicy >:: | ||||
back | () | |||
Definition at line 67 of file ListParser.ct.
senf::ListParser_Container< ListPolicy >::iterator senf::ListParser_Container< ListPolicy >:: | ||||
begin | () | |||
Definition at line 259 of file ListParser.cti.
senf::ListParser_Container< ListPolicy >::size_type senf::ListParser_Container< ListPolicy >:: | ||||
bytes | () | |||
Definition at line 370 of file ListParser.cti.
void senf::ListParser_Container< ListPolicy >:: | ||||
clear | () | |||
Definition at line 145 of file ListParser.ct.
senf::PacketData & senf::ListParser_Container< ListPolicy >:: | ||||
data | () | |||
Definition at line 362 of file ListParser.cti.
bool senf::ListParser_Container< ListPolicy >:: | ||||
empty | () | |||
Definition at line 250 of file ListParser.cti.
senf::ListParser_Container< ListPolicy >::iterator senf::ListParser_Container< ListPolicy >:: | ||||
end | () | |||
Definition at line 270 of file ListParser.cti.
void senf::ListParser_Container< ListPolicy >:: | ||||
erase | ( | iterator | f, | |
iterator | l | ) | ||
Definition at line 299 of file ListParser.cti.
void senf::ListParser_Container< ListPolicy >:: | ||||
erase | ( | iterator | pos, | |
size_type |
n = 1
|
) | ||
Definition at line 133 of file ListParser.ct.
senf::ListParser_Container< ListPolicy >::value_type senf::ListParser_Container< ListPolicy >:: | ||||
front | () | |||
Definition at line 281 of file ListParser.cti.
senf::ListParser_Container< ListPolicy >::data_iterator senf::ListParser_Container< ListPolicy >:: | ||||
i | () | |||
Definition at line 347 of file ListParser.cti.
void senf::ListParser_Container< ListPolicy >:: | ||||
init | () | |||
Definition at line 378 of file ListParser.cti.
void senf::ListParser_Container< ListPolicy >:: | ||||
insert | ( | iterator | pos, | |
ForwardIterator | f, | |||
ForwardIterator | l | ) | ||
Definition at line 128 of file ListParser.ct.
void senf::ListParser_Container< ListPolicy >:: | ||||
insert | ( | iterator | pos, | |
size_type | n, | |||
Value const & | t | ) | ||
Definition at line 93 of file ListParser.ct.
void senf::ListParser_Container< ListPolicy >:: | ||||
insert | ( | iterator | pos, | |
Value const & | t | ) | ||
Definition at line 292 of file ListParser.cti.
senf::ListParser_Container< ListPolicy >::parser_type senf::ListParser_Container< ListPolicy >:: | ||||
parser | () | |||
Definition at line 338 of file ListParser.cti.
void senf::ListParser_Container< ListPolicy >:: | ||||
push_back | ( | Value const & | value, | |
size_type |
n = 1
|
) | ||
Definition at line 306 of file ListParser.cti.
senf::ListParser_Container< ListPolicy >::value_type senf::ListParser_Container< ListPolicy >:: | ||||
push_back_space | ( | size_type |
n = 1
|
) |
Definition at line 314 of file ListParser.cti.
void senf::ListParser_Container< ListPolicy >:: | ||||
push_front | ( | Value const & | value, | |
size_type |
n = 1
|
) | ||
Definition at line 321 of file ListParser.cti.
senf::ListParser_Container< ListPolicy >::value_type senf::ListParser_Container< ListPolicy >:: | ||||
push_front_space | ( | size_type |
n = 1
|
) |
Definition at line 329 of file ListParser.cti.
void senf::ListParser_Container< ListPolicy >:: | ||||
resize | ( | size_type | n, | |
Value | value | ) | ||
Definition at line 168 of file ListParser.ct.
void senf::ListParser_Container< ListPolicy >:: | ||||
resize | ( | size_type | n | ) |
Definition at line 157 of file ListParser.ct.
senf::ListParser_Container< ListPolicy >::value_type senf::ListParser_Container< ListPolicy >:: | ||||
shift | ( | iterator | pos, | |
size_type |
n = 1
|
) | ||
Definition at line 79 of file ListParser.ct.
senf::ListParser_Container< ListPolicy >::size_type senf::ListParser_Container< ListPolicy >:: | ||||
size | () | |||
Definition at line 242 of file ListParser.cti.
senf::ListParser_Container< ListPolicy >::state_type senf::ListParser_Container< ListPolicy >:: | ||||
state | () | |||
Definition at line 355 of file ListParser.cti.