Go to the source code of this file.
◆ do_serialize_container() [1/2]
template<template< bool > class Archive, typename C>
| bool do_serialize_container |
( |
Archive< false > & | ar, |
|
|
C & | v ) |
Definition at line 65 of file container.h.
66{
67 size_t cnt;
68 ar.begin_array(cnt);
69 if (!ar.stream().good())
70 return false;
71 v.clear();
72
73
74 if (ar.remaining_bytes() < cnt) {
75 ar.stream().setstate(std::ios::failbit);
76 return false;
77 }
78
80
81 for (size_t i = 0; i < cnt; i++) {
82 if (i > 0)
83 ar.delimit_array();
84 typename C::value_type e;
86 return false;
88 if (!ar.stream().good())
89 return false;
90 }
91 ar.end_array();
92 return true;
93}
bool serialize_container_element(Archive &ar, T &e)
void do_add(std::deque< T > &c, T &&e)
void do_reserve(C &c, size_t N)
◆ do_serialize_container() [2/2]
template<template< bool > class Archive, typename C>
| bool do_serialize_container |
( |
Archive< true > & | ar, |
|
|
C & | v ) |
Definition at line 96 of file container.h.
97{
98 size_t cnt = v.size();
99 ar.begin_array(cnt);
100 for (auto i = v.begin(); i != v.end(); ++i)
101 {
102 if (!ar.stream().good())
103 return false;
104 if (i != v.begin())
105 ar.delimit_array();
107 return false;
108 if (!ar.stream().good())
109 return false;
110 }
111 ar.end_array();
112 return true;
113}