Port serial to new memory format
This commit is contained in:
1 parent
77195fb1d0
commit
256ff916a2
16 files changed
+218
-240
No files matched your search
@@ -1119,8 +1119,7 @@ M_ARRAY_DEF(m_array_index, m_indexhash_t, M_POD_OPLIST)
|
||||
, /* no IN_STR */ ) \
|
||||
\
|
||||
M_IF_METHOD_BOTH(OUT_SERIAL, key_oplist, value_oplist)( \
|
||||
M_INLINE m_serial_return_code_t \
|
||||
M_F(name, _out_serial)(m_serial_write_t f, dict_t const t1) \
|
||||
M_P(m_serial_return_code_t, name, _out_serial, m_serial_write_t f, dict_t const t1) \
|
||||
{ \
|
||||
M_ASSERT (f != NULL && f->m_interface != NULL); \
|
||||
m_serial_local_t local; \
|
||||
@@ -1131,31 +1130,31 @@ M_ARRAY_DEF(m_array_index, m_indexhash_t, M_POD_OPLIST)
|
||||
/* Format is different between associative container \
|
||||
& set container */ \
|
||||
M_IF(isSet)( \
|
||||
ret = f->m_interface->write_array_start(local, f, M_F(name, _size)(t1)); \
|
||||
ret = f->m_interface->write_array_start M_R(local, f, M_F(name, _size)(t1)); \
|
||||
for (M_F(name, _it)(it, t1) ; \
|
||||
!M_F(name, _end_p)(it); \
|
||||
M_F(name, _next)(it)){ \
|
||||
item = M_F(name, _cref)(it); \
|
||||
if (first_done) \
|
||||
ret |= f->m_interface->write_array_next(local, f); \
|
||||
ret |= f->m_interface->write_array_next M_R(local, f); \
|
||||
ret |= M_CALL_OUT_SERIAL(key_oplist, f, *item); \
|
||||
first_done = true; \
|
||||
} \
|
||||
ret |= f->m_interface->write_array_end(local, f); \
|
||||
ret |= f->m_interface->write_array_end M_R(local, f); \
|
||||
, \
|
||||
ret = f->m_interface->write_map_start(local, f, M_F(name, _size)(t1)); \
|
||||
ret = f->m_interface->write_map_start M_R(local, f, M_F(name, _size)(t1)); \
|
||||
for (M_F(name, _it)(it, t1) ; \
|
||||
!M_F(name, _end_p)(it); \
|
||||
M_F(name, _next)(it)){ \
|
||||
item = M_F(name, _cref)(it); \
|
||||
if (first_done) \
|
||||
ret |= f->m_interface->write_map_next(local, f); \
|
||||
ret |= f->m_interface->write_map_next M_R(local, f); \
|
||||
ret |= M_CALL_OUT_SERIAL(key_oplist, f, item->key); \
|
||||
ret |= f->m_interface->write_map_value(local, f); \
|
||||
ret |= f->m_interface->write_map_value M_R(local, f); \
|
||||
ret |= M_CALL_OUT_SERIAL(value_oplist, f, item->value); \
|
||||
first_done = true; \
|
||||
} \
|
||||
ret |= f->m_interface->write_map_end(local, f); \
|
||||
ret |= f->m_interface->write_map_end M_R(local, f); \
|
||||
) \
|
||||
return ret & M_SERIAL_FAIL; \
|
||||
} \
|
||||
|
||||
Reference in new issue
Block a user