2 template <>
struct binary<
std::vector< std::string > >
6 typedef std::vector< std::string > value_type;
7 typedef value_type::value_type elem_type;
9 static const bool is_streamable =
true;
15 size_t operator() (
size_t _v1,
const elem_type& _s2 )
16 {
return _v1 + binary<elem_type>::size_of(_s2); }
21 static size_t size_of(
void) {
return UnknownSize; }
23 static size_t size_of(
const value_type& _v)
24 {
return std::accumulate( _v.begin(), _v.end(), size_t(0), Sum() ); }
27 size_t store(std::ostream& _os,
const value_type& _v,
bool _swap=
false)
29 return std::accumulate( _v.begin(), _v.end(), size_t(0),
30 FunctorStore<elem_type>(_os, _swap) );
34 size_t restore(std::istream& _is, value_type& _v,
bool _swap=
false)
36 return std::accumulate( _v.begin(), _v.end(), size_t(0),
37 FunctorRestore<elem_type>(_is, _swap) );