Rename string_ into m_string_ in header files (Test files still test classic API)

This commit is contained in:
Patrick Pelissier committed 2022-03-20 18:30:32 +01:00
1 parent f3376b6f0e
commit 5e57338928
12 files changed
+89 -89

No files matched your search

+4 -4
View File
@@ -892,11 +892,11 @@
\ \
M_IF_METHOD(GET_STR, oplist)( \ M_IF_METHOD(GET_STR, oplist)( \
static inline void \ static inline void \
M_C(name, _get_str)(string_t str, array_t const array, \ M_C(name, _get_str)(m_string_t str, array_t const array, \
bool append) \ bool append) \
{ \ { \
M_ARRA4_CONTRACT(array); \ M_ARRA4_CONTRACT(array); \
(append ? string_cat_str : string_set_str) (str, "["); \ (append ? m_string_cat_str : m_string_set_str) (str, "["); \
it_t it; \ it_t it; \
for (M_C(name, _it)(it, array) ; \ for (M_C(name, _it)(it, array) ; \
!M_C(name, _end_p)(it); \ !M_C(name, _end_p)(it); \
@@ -904,9 +904,9 @@
type const *item = M_C(name, _cref)(it); \ type const *item = M_C(name, _cref)(it); \
M_CALL_GET_STR(oplist, str, *item, true); \ M_CALL_GET_STR(oplist, str, *item, true); \
if (!M_C(name, _last_p)(it)) \ if (!M_C(name, _last_p)(it)) \
string_push_back (str, M_GET_SEPARATOR oplist); \ m_string_push_back (str, M_GET_SEPARATOR oplist); \
} \ } \
string_push_back (str, ']'); \ m_string_push_back (str, ']'); \
} \ } \
, /* no GET_STR */ ) \ , /* no GET_STR */ ) \
\ \
+5 -5
View File
@@ -867,20 +867,20 @@ M_END_PROTECTED_CODE
M_BEGIN_PROTECTED_CODE M_BEGIN_PROTECTED_CODE
/* Output to a string_t 'str' the formatted text representation of the bitset 'set' /* Output to a m_string_t 'str' the formatted text representation of the bitset 'set'
or append it to the strinf (append=true) */ or append it to the strinf (append=true) */
static inline void static inline void
bitset_get_str(string_t str, const bitset_t set, bool append) bitset_get_str(m_string_t str, const bitset_t set, bool append)
{ {
M_B1TSET_CONTRACT (set); M_B1TSET_CONTRACT (set);
M_ASSERT(str != NULL); M_ASSERT(str != NULL);
(append ? string_cat_str : string_set_str) (str, "["); (append ? m_string_cat_str : m_string_set_str) (str, "[");
for(size_t i = 0; i < set->size; i++) { for(size_t i = 0; i < set->size; i++) {
const bool b = bitset_get (set, i); const bool b = bitset_get (set, i);
const char c = b ? '1' : '0'; const char c = b ? '1' : '0';
string_push_back (str, c); m_string_push_back (str, c);
} }
string_push_back (str, ']'); m_string_push_back (str, ']');
} }
M_END_PROTECTED_CODE M_END_PROTECTED_CODE
+5 -5
View File
@@ -1246,11 +1246,11 @@
, /* NO HASH METHOD */ ) \ , /* NO HASH METHOD */ ) \
\ \
M_IF_METHOD_BOTH(GET_STR, key_oplist, value_oplist)( \ M_IF_METHOD_BOTH(GET_STR, key_oplist, value_oplist)( \
static inline void M_C(name, _get_str)(string_t str, \ static inline void M_C(name, _get_str)(m_string_t str, \
const tree_t t1, bool append) { \ const tree_t t1, bool append) { \
M_BPTR33_CONTRACT(N, isMulti, key_oplist, t1); \ M_BPTR33_CONTRACT(N, isMulti, key_oplist, t1); \
M_ASSERT(str != NULL); \ M_ASSERT(str != NULL); \
(append ? string_cat_str : string_set_str) (str, "["); \ (append ? m_string_cat_str : m_string_set_str) (str, "["); \
/* NOTE: The print is really naive, and not really efficient */ \ /* NOTE: The print is really naive, and not really efficient */ \
bool commaToPrint = false; \ bool commaToPrint = false; \
it_t it; \ it_t it; \
@@ -1258,18 +1258,18 @@
!M_C(name, _end_p)(it); \ !M_C(name, _end_p)(it); \
M_C(name, _next)(it)) { \ M_C(name, _next)(it)) { \
if (commaToPrint) \ if (commaToPrint) \
string_push_back (str, M_GET_SEPARATOR key_oplist); \ m_string_push_back (str, M_GET_SEPARATOR key_oplist); \
commaToPrint = true; \ commaToPrint = true; \
subtype_t const *ref1 = M_C(name, _cref)(it); \ subtype_t const *ref1 = M_C(name, _cref)(it); \
M_IF(isMap)( \ M_IF(isMap)( \
M_CALL_GET_STR(key_oplist, str, *ref1->key_ptr, true); \ M_CALL_GET_STR(key_oplist, str, *ref1->key_ptr, true); \
string_cat_str(str, ":"); \ m_string_cat_str(str, ":"); \
M_CALL_GET_STR(value_oplist,str, *ref1->value_ptr, true) \ M_CALL_GET_STR(value_oplist,str, *ref1->value_ptr, true) \
, \ , \
M_CALL_GET_STR(key_oplist, str, *ref1, true); \ M_CALL_GET_STR(key_oplist, str, *ref1, true); \
); \ ); \
} \ } \
string_push_back (str, ']'); \ m_string_push_back (str, ']'); \
} \ } \
, /* NO GET_STR */ ) \ , /* NO GET_STR */ ) \
\ \
+1 -1
View File
@@ -555,7 +555,7 @@
\ \
M_IF_METHOD(GET_STR, oplist)( \ M_IF_METHOD(GET_STR, oplist)( \
static inline void \ static inline void \
M_C(name, _get_str)(string_t str, concurrent_t const out, bool a) \ M_C(name, _get_str)(m_string_t str, concurrent_t const out, bool a) \
{ \ { \
M_C0NCURRENT_CONTRACT(out); \ M_C0NCURRENT_CONTRACT(out); \
M_C(name, _read_lock)(out); \ M_C(name, _read_lock)(out); \
+4 -4
View File
@@ -2168,9 +2168,9 @@ M_FSCAN_DEFAULT_TYPE_DEF(m_core_fscan_ldouble, long double, "%Lf")
#endif #endif
/* Transform a C variable into a string_t (needs m-string.h) */ /* Transform a C variable into a m_string_t (needs m-string.h) */
#define M_GET_STRING_ARG(str, x, append) \ #define M_GET_STRING_ARG(str, x, append) \
(append ? string_cat_printf : string_printf) (str, M_PRINTF_FORMAT(x), M_CORE_PRINTF_ARG(x)) (append ? m_string_cat_printf : m_string_printf) (str, M_PRINTF_FORMAT(x), M_CORE_PRINTF_ARG(x))
/* No use of GET_STR if no inclusion of m-string */ /* No use of GET_STR if no inclusion of m-string */
#define M_GET_STR_METHOD_FOR_DEFAULT_TYPE /* */ #define M_GET_STR_METHOD_FOR_DEFAULT_TYPE /* */
@@ -3389,7 +3389,7 @@ m_core_parse2_enum (const char str[], const char **endptr)
#define M_ENUM_IN_SERIAL(oplist, var, serial) \ #define M_ENUM_IN_SERIAL(oplist, var, serial) \
( var = (M_GET_TYPE oplist)(true ? m_core_in_serial_enum(serial) : 0), (serial)->tmp.r) ( var = (M_GET_TYPE oplist)(true ? m_core_in_serial_enum(serial) : 0), (serial)->tmp.r)
#define M_ENUM_GET_STR(str, var, append) \ #define M_ENUM_GET_STR(str, var, append) \
((append ? string_cat_printf : string_printf) (str, "%lld", (long long) (var) )) ((append ? m_string_cat_printf : m_string_printf) (str, "%lld", (long long) (var) ))
#define M_ENUM_PARSE(oplist, var, str, endptr) \ #define M_ENUM_PARSE(oplist, var, str, endptr) \
( var = (M_GET_TYPE oplist) (true ? m_core_parse1_enum(str) : 0), m_core_parse2_enum(str, endptr)) ( var = (M_GET_TYPE oplist) (true ? m_core_parse1_enum(str) : 0), m_core_parse2_enum(str, endptr))
@@ -3858,7 +3858,7 @@ m_core_backoff_clear(m_core_backoff_ct backoff)
/********************** Serialization ***********************/ /********************** Serialization ***********************/
/************************************************************/ /************************************************************/
/* Forward declaration of string_t defined in m-string.h */ /* Forward declaration of m_string_t defined in m-string.h */
struct m_string_s; struct m_string_s;
/* Serialization Return code: /* Serialization Return code:
+4 -4
View File
@@ -896,10 +896,10 @@
\ \
M_IF_METHOD(GET_STR, oplist)( \ M_IF_METHOD(GET_STR, oplist)( \
static inline void \ static inline void \
M_C(name, _get_str)(string_t str, deque_t const deque, bool append) \ M_C(name, _get_str)(m_string_t str, deque_t const deque, bool append) \
{ \ { \
M_D3QU3_CONTRACT(deque); \ M_D3QU3_CONTRACT(deque); \
(append ? string_cat_str : string_set_str) (str, "["); \ (append ? m_string_cat_str : m_string_set_str) (str, "["); \
it_t it; \ it_t it; \
for (M_C(name, _it)(it, deque) ; \ for (M_C(name, _it)(it, deque) ; \
!M_C(name, _end_p)(it); \ !M_C(name, _end_p)(it); \
@@ -907,9 +907,9 @@
type const *item = M_C(name, _cref)(it); \ type const *item = M_C(name, _cref)(it); \
M_CALL_GET_STR(oplist, str, *item, true); \ M_CALL_GET_STR(oplist, str, *item, true); \
if (!M_C(name, _last_p)(it)) \ if (!M_C(name, _last_p)(it)) \
string_push_back (str, M_GET_SEPARATOR oplist); \ m_string_push_back (str, M_GET_SEPARATOR oplist); \
} \ } \
string_push_back (str, ']'); \ m_string_push_back (str, ']'); \
} \ } \
, /* no GET_STR */ ) \ , /* no GET_STR */ ) \
\ \
+5 -5
View File
@@ -767,27 +767,27 @@
\ \
M_IF_METHOD_BOTH(GET_STR, key_oplist, value_oplist)( \ M_IF_METHOD_BOTH(GET_STR, key_oplist, value_oplist)( \
static inline void \ static inline void \
M_C(name, _get_str)(string_t str, const dict_t dict, const bool append) \ M_C(name, _get_str)(m_string_t str, const dict_t dict, const bool append) \
{ \ { \
(append ? string_cat_str : string_set_str) (str, "{"); \ (append ? m_string_cat_str : m_string_set_str) (str, "{"); \
dict_it_t it; \ dict_it_t it; \
bool print_comma = false; \ bool print_comma = false; \
for (M_C(name, _it)(it, dict) ; \ for (M_C(name, _it)(it, dict) ; \
!M_C(name, _end_p)(it); \ !M_C(name, _end_p)(it); \
M_C(name, _next)(it)){ \ M_C(name, _next)(it)){ \
if (print_comma) \ if (print_comma) \
string_push_back (str, ','); \ m_string_push_back (str, ','); \
const it_deref_t *item = M_C(name, _cref)(it); \ const it_deref_t *item = M_C(name, _cref)(it); \
M_IF(isSet)( \ M_IF(isSet)( \
M_CALL_GET_STR(key_oplist, str, *item, true); \ M_CALL_GET_STR(key_oplist, str, *item, true); \
, \ , \
M_CALL_GET_STR(key_oplist, str, item->key, true); \ M_CALL_GET_STR(key_oplist, str, item->key, true); \
string_push_back (str, ':'); \ m_string_push_back (str, ':'); \
M_CALL_GET_STR(value_oplist, str, item->value, true); \ M_CALL_GET_STR(value_oplist, str, item->value, true); \
) \ ) \
print_comma = true; \ print_comma = true; \
} \ } \
string_push_back (str, '}'); \ m_string_push_back (str, '}'); \
} \ } \
, /* no GET_STR */ ) \ , /* no GET_STR */ ) \
\ \
+4 -4
View File
@@ -682,11 +682,11 @@
\ \
M_IF_METHOD(GET_STR, oplist)( \ M_IF_METHOD(GET_STR, oplist)( \
static inline void \ static inline void \
M_C(name, _get_str)(string_t str, const list_t list, \ M_C(name, _get_str)(m_string_t str, const list_t list, \
bool append) \ bool append) \
{ \ { \
M_ASSERT (str != NULL && list != NULL); \ M_ASSERT (str != NULL && list != NULL); \
(append ? string_cat_str : string_set_str) (str, "["); \ (append ? m_string_cat_str : m_string_set_str) (str, "["); \
it_t it; \ it_t it; \
for (M_C(name, _it)(it, list) ; \ for (M_C(name, _it)(it, list) ; \
!M_C(name, _end_p)(it); \ !M_C(name, _end_p)(it); \
@@ -694,9 +694,9 @@
type const *item = M_C(name, _cref)(it); \ type const *item = M_C(name, _cref)(it); \
M_CALL_GET_STR(oplist, str, *item, true); \ M_CALL_GET_STR(oplist, str, *item, true); \
if (!M_C(name, _last_p)(it)) \ if (!M_C(name, _last_p)(it)) \
string_push_back (str, M_GET_SEPARATOR oplist); \ m_string_push_back (str, M_GET_SEPARATOR oplist); \
} \ } \
string_push_back (str, ']'); \ m_string_push_back (str, ']'); \
} \ } \
, /* no str */ ) \ , /* no str */ ) \
\ \
+4 -4
View File
@@ -1014,24 +1014,24 @@ typedef enum {
, /* NO HASH METHOD */ ) \ , /* NO HASH METHOD */ ) \
\ \
M_IF_METHOD(GET_STR, oplist)( \ M_IF_METHOD(GET_STR, oplist)( \
static inline void M_C(name, _get_str)(string_t str, \ static inline void M_C(name, _get_str)(m_string_t str, \
tree_t const t1, bool append) { \ tree_t const t1, bool append) { \
M_RBTR33_CONTRACT(t1); \ M_RBTR33_CONTRACT(t1); \
M_ASSERT(str != NULL); \ M_ASSERT(str != NULL); \
(append ? string_cat_str : string_set_str) (str, "["); \ (append ? m_string_cat_str : m_string_set_str) (str, "["); \
/* NOTE: The print is really naive, and not really efficient */ \ /* NOTE: The print is really naive, and not really efficient */ \
bool commaToPrint = false; \ bool commaToPrint = false; \
it_t it1; \ it_t it1; \
M_C(name, _it)(it1, t1); \ M_C(name, _it)(it1, t1); \
while (!M_C(name, _end_p)(it1)) { \ while (!M_C(name, _end_p)(it1)) { \
if (commaToPrint) \ if (commaToPrint) \
string_push_back (str, M_GET_SEPARATOR oplist); \ m_string_push_back (str, M_GET_SEPARATOR oplist); \
commaToPrint = true; \ commaToPrint = true; \
type const *ref1 = M_C(name, _cref)(it1); \ type const *ref1 = M_C(name, _cref)(it1); \
M_CALL_GET_STR(oplist, str, *ref1, true); \ M_CALL_GET_STR(oplist, str, *ref1, true); \
M_C(name, _next)(it1); \ M_C(name, _next)(it1); \
} \ } \
string_push_back (str, ']'); \ m_string_push_back (str, ']'); \
} \ } \
, /* NO GET_STR */ ) \ , /* NO GET_STR */ ) \
\ \
+44 -44
View File
@@ -74,13 +74,13 @@ m_ser1al_json_write_string(m_serial_write_t serial, const char data[], size_t le
M_ASSERT_SLOW(length == strlen(data) ); M_ASSERT_SLOW(length == strlen(data) );
FILE *f = (FILE *)serial->data[0].p; FILE *f = (FILE *)serial->data[0].p;
M_ASSERT(f != NULL && data != NULL); M_ASSERT(f != NULL && data != NULL);
/* HACK: Build dummy string to reuse string_out_str */ /* HACK: Build dummy string to reuse m_string_out_str */
string_t v2; m_string_t v2;
uintptr_t ptr = (uintptr_t) data; uintptr_t ptr = (uintptr_t) data;
v2->u.heap.size = length; v2->u.heap.size = length;
v2->u.heap.alloc = length + 1; v2->u.heap.alloc = length + 1;
v2->ptr = (char*)ptr; v2->ptr = (char*)ptr;
string_out_str(f, v2); m_string_out_str(f, v2);
return M_SERIAL_OK_DONE; return M_SERIAL_OK_DONE;
} }
@@ -354,11 +354,11 @@ m_ser1al_json_read_float(m_serial_read_t serial, long double *r, const size_t si
Set 's' with the string if succeeds Set 's' with the string if succeeds
Return M_SERIAL_OK_DONE if it succeeds, M_SERIAL_FAIL otherwise */ Return M_SERIAL_OK_DONE if it succeeds, M_SERIAL_FAIL otherwise */
static inline m_serial_return_code_t static inline m_serial_return_code_t
m_ser1al_json_read_string(m_serial_read_t serial, struct string_s *s){ m_ser1al_json_read_string(m_serial_read_t serial, struct m_string_s *s){
FILE *f = (FILE*) serial->data[0].p; FILE *f = (FILE*) serial->data[0].p;
int n = m_core_fscanf(f, " "); // Skip any leading spaces. int n = m_core_fscanf(f, " "); // Skip any leading spaces.
(void) n; // Unused return value. (void) n; // Unused return value.
return string_in_str(s, f) ? M_SERIAL_OK_DONE : m_core_serial_fail(); return m_string_in_str(s, f) ? M_SERIAL_OK_DONE : m_core_serial_fail();
} }
/* Start reading from the stream 'serial' an array. /* Start reading from the stream 'serial' an array.
@@ -599,8 +599,8 @@ typedef m_serial_read_t m_serial_json_read_t;
static inline m_serial_return_code_t static inline m_serial_return_code_t
m_ser1al_str_json_write_boolean(m_serial_write_t serial, const bool data) m_ser1al_str_json_write_boolean(m_serial_write_t serial, const bool data)
{ {
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
int n = string_cat_printf(f, "%s", data ? "true" : "false"); int n = m_string_cat_printf(f, "%s", data ? "true" : "false");
return n > 0 ? M_SERIAL_OK_DONE : m_core_serial_fail(); return n > 0 ? M_SERIAL_OK_DONE : m_core_serial_fail();
} }
@@ -610,8 +610,8 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_integer(m_serial_write_t serial,const long long data, const size_t size_of_type) m_ser1al_str_json_write_integer(m_serial_write_t serial,const long long data, const size_t size_of_type)
{ {
(void) size_of_type; // Ignored (void) size_of_type; // Ignored
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
int n = string_cat_printf(f, "%lld", data); int n = m_string_cat_printf(f, "%lld", data);
return n > 0 ? M_SERIAL_OK_DONE : m_core_serial_fail(); return n > 0 ? M_SERIAL_OK_DONE : m_core_serial_fail();
} }
@@ -621,8 +621,8 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_float(m_serial_write_t serial, const long double data, const size_t size_of_type) m_ser1al_str_json_write_float(m_serial_write_t serial, const long double data, const size_t size_of_type)
{ {
(void) size_of_type; // Ignored (void) size_of_type; // Ignored
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
int n = string_cat_printf(f, "%Lf", data); int n = m_string_cat_printf(f, "%Lf", data);
return n > 0 ? M_SERIAL_OK_DONE : m_core_serial_fail(); return n > 0 ? M_SERIAL_OK_DONE : m_core_serial_fail();
} }
@@ -632,15 +632,15 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_string(m_serial_write_t serial, const char data[], size_t length) m_ser1al_str_json_write_string(m_serial_write_t serial, const char data[], size_t length)
{ {
M_ASSERT_SLOW(length == strlen(data) ); M_ASSERT_SLOW(length == strlen(data) );
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
M_ASSERT(f != NULL && data != NULL); M_ASSERT(f != NULL && data != NULL);
/* HACK: Build dummy string to reuse string_get_str */ /* HACK: Build dummy string to reuse m_string_get_str */
string_t v2; m_string_t v2;
uintptr_t ptr = (uintptr_t) data; uintptr_t ptr = (uintptr_t) data;
v2->u.heap.size = length; v2->u.heap.size = length;
v2->u.heap.alloc = length + 1; v2->u.heap.alloc = length + 1;
v2->ptr = (char*)ptr; v2->ptr = (char*)ptr;
string_get_str(f, v2, true); m_string_get_str(f, v2, true);
return M_SERIAL_OK_DONE; return M_SERIAL_OK_DONE;
} }
@@ -655,8 +655,8 @@ m_ser1al_str_json_write_array_start(m_serial_local_t local, m_serial_write_t ser
{ {
(void) local; // argument not used (void) local; // argument not used
(void) number_of_elements; // Ignored (void) number_of_elements; // Ignored
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
string_push_back(f, '['); m_string_push_back(f, '[');
return M_SERIAL_OK_CONTINUE; return M_SERIAL_OK_CONTINUE;
} }
@@ -666,8 +666,8 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_array_next(m_serial_local_t local, m_serial_write_t serial) m_ser1al_str_json_write_array_next(m_serial_local_t local, m_serial_write_t serial)
{ {
(void) local; // argument not used (void) local; // argument not used
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
string_push_back(f, ','); m_string_push_back(f, ',');
return M_SERIAL_OK_CONTINUE; return M_SERIAL_OK_CONTINUE;
} }
@@ -677,8 +677,8 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_array_end(m_serial_local_t local, m_serial_write_t serial) m_ser1al_str_json_write_array_end(m_serial_local_t local, m_serial_write_t serial)
{ {
(void) local; // argument not used (void) local; // argument not used
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
string_push_back(f, ']'); m_string_push_back(f, ']');
return M_SERIAL_OK_CONTINUE; return M_SERIAL_OK_CONTINUE;
} }
@@ -693,8 +693,8 @@ m_ser1al_str_json_write_map_start(m_serial_local_t local, m_serial_write_t seria
{ {
(void) local; // argument not used (void) local; // argument not used
(void) number_of_elements; // Ignored (void) number_of_elements; // Ignored
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
string_push_back(f, '{'); m_string_push_back(f, '{');
return M_SERIAL_OK_CONTINUE; return M_SERIAL_OK_CONTINUE;
} }
@@ -704,8 +704,8 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_map_value(m_serial_local_t local, m_serial_write_t serial) m_ser1al_str_json_write_map_value(m_serial_local_t local, m_serial_write_t serial)
{ {
(void) local; // argument not used (void) local; // argument not used
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
string_push_back(f, ':'); m_string_push_back(f, ':');
return M_SERIAL_OK_CONTINUE; return M_SERIAL_OK_CONTINUE;
} }
@@ -715,8 +715,8 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_map_next(m_serial_local_t local, m_serial_write_t serial) m_ser1al_str_json_write_map_next(m_serial_local_t local, m_serial_write_t serial)
{ {
(void) local; // argument not used (void) local; // argument not used
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
string_push_back(f, ','); m_string_push_back(f, ',');
return M_SERIAL_OK_CONTINUE; return M_SERIAL_OK_CONTINUE;
} }
@@ -726,8 +726,8 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_map_end(m_serial_local_t local, m_serial_write_t serial) m_ser1al_str_json_write_map_end(m_serial_local_t local, m_serial_write_t serial)
{ {
(void) local; // argument not used (void) local; // argument not used
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
string_push_back(f, '}'); m_string_push_back(f, '}');
return M_SERIAL_OK_CONTINUE; return M_SERIAL_OK_CONTINUE;
} }
@@ -739,8 +739,8 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_tuple_start(m_serial_local_t local, m_serial_write_t serial) m_ser1al_str_json_write_tuple_start(m_serial_local_t local, m_serial_write_t serial)
{ {
(void) local; // argument not used (void) local; // argument not used
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
string_push_back(f, '{'); m_string_push_back(f, '{');
return M_SERIAL_OK_CONTINUE; return M_SERIAL_OK_CONTINUE;
} }
@@ -751,8 +751,8 @@ m_ser1al_str_json_write_tuple_id(m_serial_local_t local, m_serial_write_t serial
{ {
(void) local; // argument not used (void) local; // argument not used
(void) max; // Ignored (void) max; // Ignored
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
int n = string_cat_printf(f, "%c\"%s\":", index == 0 ? ' ' : ',', field_name[index]); int n = m_string_cat_printf(f, "%c\"%s\":", index == 0 ? ' ' : ',', field_name[index]);
return n > 0 ? M_SERIAL_OK_CONTINUE : m_core_serial_fail(); return n > 0 ? M_SERIAL_OK_CONTINUE : m_core_serial_fail();
} }
@@ -762,8 +762,8 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_tuple_end(m_serial_local_t local, m_serial_write_t serial) m_ser1al_str_json_write_tuple_end(m_serial_local_t local, m_serial_write_t serial)
{ {
(void) local; // argument not used (void) local; // argument not used
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
string_push_back(f, '}'); m_string_push_back(f, '}');
return M_SERIAL_OK_CONTINUE; return M_SERIAL_OK_CONTINUE;
} }
@@ -777,14 +777,14 @@ m_ser1al_str_json_write_variant_start(m_serial_local_t local, m_serial_write_t s
{ {
(void) local; // argument not used (void) local; // argument not used
(void) max; // argument not used (void) max; // argument not used
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
int n; int n;
if (index >= 0) { if (index >= 0) {
M_ASSERT (index < max); M_ASSERT (index < max);
n = string_cat_printf(f, "{\"%s\":", field_name[index]); n = m_string_cat_printf(f, "{\"%s\":", field_name[index]);
return n > 0 ? M_SERIAL_OK_CONTINUE : m_core_serial_fail(); return n > 0 ? M_SERIAL_OK_CONTINUE : m_core_serial_fail();
} else { } else {
n = string_cat_printf(f, "{}"); n = m_string_cat_printf(f, "{}");
return n > 0 ? M_SERIAL_OK_DONE : m_core_serial_fail(); return n > 0 ? M_SERIAL_OK_DONE : m_core_serial_fail();
} }
} }
@@ -795,8 +795,8 @@ static inline m_serial_return_code_t
m_ser1al_str_json_write_variant_end(m_serial_local_t local, m_serial_write_t serial) m_ser1al_str_json_write_variant_end(m_serial_local_t local, m_serial_write_t serial)
{ {
(void) local; // argument not used (void) local; // argument not used
struct string_s *f = (struct string_s *)serial->data[0].p; struct m_string_s *f = (struct m_string_s *)serial->data[0].p;
string_push_back(f, '}'); m_string_push_back(f, '}');
return M_SERIAL_OK_CONTINUE; return M_SERIAL_OK_CONTINUE;
} }
@@ -821,10 +821,10 @@ static const m_serial_write_interface_t m_ser1al_str_json_write_interface = {
}; };
/* Initialize the JSON serial object for writing any object to JSON format in the given FILE */ /* Initialize the JSON serial object for writing any object to JSON format in the given FILE */
static inline void m_serial_str_json_write_init(m_serial_write_t serial, string_t s) static inline void m_serial_str_json_write_init(m_serial_write_t serial, m_string_t s)
{ {
serial->m_interface = &m_ser1al_str_json_write_interface; serial->m_interface = &m_ser1al_str_json_write_interface;
serial->data[0].p = M_ASSIGN_CAST(struct string_s *, s); serial->data[0].p = M_ASSIGN_CAST(struct m_string_s *, s);
} }
/* CLear the JSON serial object for writing*/ /* CLear the JSON serial object for writing*/
@@ -942,11 +942,11 @@ m_ser1al_str_json_read_float(m_serial_read_t serial, long double *r, const size_
Set 's' with the string if succeeds Set 's' with the string if succeeds
Return M_SERIAL_OK_DONE if it succeeds, M_SERIAL_FAIL otherwise */ Return M_SERIAL_OK_DONE if it succeeds, M_SERIAL_FAIL otherwise */
static inline m_serial_return_code_t static inline m_serial_return_code_t
m_ser1al_str_json_read_string(m_serial_read_t serial, struct string_s *s){ m_ser1al_str_json_read_string(m_serial_read_t serial, struct m_string_s *s){
const char **f = &serial->data[0].cstr; const char **f = &serial->data[0].cstr;
m_ser1al_str_json_skip(f); m_ser1al_str_json_skip(f);
const char *e; const char *e;
bool b = string_parse_str(s, *f, &e); bool b = m_string_parse_str(s, *f, &e);
serial->data[0].cstr = e; serial->data[0].cstr = e;
return b ? M_SERIAL_OK_DONE : m_core_serial_fail(); return b ? M_SERIAL_OK_DONE : m_core_serial_fail();
} }
+5 -5
View File
@@ -441,19 +441,19 @@ namespace m_lib {
/* Define a GET_STR method by calling the GET_STR methods for all params */ /* Define a GET_STR method by calling the GET_STR methods for all params */
#define M_TUPL3_DEFINE_GET_STR(name, ...) \ #define M_TUPL3_DEFINE_GET_STR(name, ...) \
static inline void M_C(name, _get_str)(string_t str, \ static inline void M_C(name, _get_str)(m_string_t str, \
M_C(name,_ct) const el, \ M_C(name,_ct) const el, \
bool append) { \ bool append) { \
bool comma = false; \ bool comma = false; \
M_TUPL3_CONTRACT(el); \ M_TUPL3_CONTRACT(el); \
M_ASSERT (str != NULL); \ M_ASSERT (str != NULL); \
(append ? string_cat_str : string_set_str) (str, "("); \ (append ? m_string_cat_str : m_string_set_str) (str, "("); \
M_MAP(M_TUPL3_DEFINE_GET_STR_FUNC , __VA_ARGS__) \ M_MAP(M_TUPL3_DEFINE_GET_STR_FUNC , __VA_ARGS__) \
string_push_back (str, ')'); \ m_string_push_back (str, ')'); \
} }
#define M_TUPL3_DEFINE_GET_STR_FUNC(a) \ #define M_TUPL3_DEFINE_GET_STR_FUNC(a) \
if (comma) string_push_back (str, ','); \ if (comma) m_string_push_back (str, ','); \
comma = true; \ comma = true; \
M_TUPL3_CALL_GET_STR(a, str, el -> M_TUPL3_GET_FIELD a, true); \ M_TUPL3_CALL_GET_STR(a, str, el -> M_TUPL3_GET_FIELD a, true); \
@@ -639,7 +639,7 @@ namespace m_lib {
/* INIT_WITH macro enabling recursive INIT_WITH initialization /* INIT_WITH macro enabling recursive INIT_WITH initialization
tuple = { int, string_t, array<string_t> } tuple = { int, m_string_t, array<m_string_t> }
USAGE: USAGE:
M_LET( (x, 2, ("John"), ( ("Bear"), ("Rabbit") )), tuple_t) M_LET( (x, 2, ("John"), ( ("Bear"), ("Rabbit") )), tuple_t)
+4 -4
View File
@@ -517,19 +517,19 @@
/* Define the GET_STR function */ /* Define the GET_STR function */
#define M_VAR1ANT_DEFINE_GET_STR(name, ...) \ #define M_VAR1ANT_DEFINE_GET_STR(name, ...) \
static inline void M_C(name, _get_str)(string_t str, \ static inline void M_C(name, _get_str)(m_string_t str, \
M_C(name,_ct) const el, \ M_C(name,_ct) const el, \
bool append) { \ bool append) { \
M_VAR1ANT_CONTRACT(name, el); \ M_VAR1ANT_CONTRACT(name, el); \
M_ASSERT (str != NULL); \ M_ASSERT (str != NULL); \
void (*func)(string_t, const char *); \ void (*func)(m_string_t, const char *); \
func = append ? string_cat_str : string_set_str; \ func = append ? m_string_cat_str : m_string_set_str; \
switch (el->type) { \ switch (el->type) { \
case M_C(name, _EMPTY): func(str, "@EMPTY@"); break; \ case M_C(name, _EMPTY): func(str, "@EMPTY@"); break; \
M_MAP2(M_VAR1ANT_DEFINE_GET_STR_FUNC , name, __VA_ARGS__) \ M_MAP2(M_VAR1ANT_DEFINE_GET_STR_FUNC , name, __VA_ARGS__) \
default: M_ASSERT(false); break; \ default: M_ASSERT(false); break; \
} \ } \
string_push_back (str, '@'); \ m_string_push_back (str, '@'); \
} }
#define M_VAR1ANT_DEFINE_GET_STR_FUNC(name, a) \ #define M_VAR1ANT_DEFINE_GET_STR_FUNC(name, a) \