Patrick Pelissier
219c62ff5d
Provide a way to alter the standard naming convention for the functions
...
Close #72
2023-04-22 09:33:08 +02:00
Patrick Pelissier
676b12d5d2
Fix warnings
2023-04-05 23:15:39 +02:00
Patrick Pelissier
8babc33b91
Rewrite code differently to be more robust
...
and improve coverage of the test suite
2023-04-05 22:41:33 +02:00
Patrick Pelissier
c35aa9c891
Replace the M_ASSERT(0) by M_ASSUME(0) since they are not reachable (in order to inform the compiler of this fact)
2023-03-05 00:50:40 +01:00
Patrick Pelissier
2f76652f2b
Maintenance
2023-03-03 22:50:14 +01:00
Patrick Pelissier
a2ae209992
Happy new year
2023-01-02 12:57:41 +01:00
Patrick Pelissier
abffe201e5
Change the suffix of the functions dealing with C-String to _cstr
...
instead of _str.
See #99 for details.
2022-07-30 12:00:55 +02:00
Patrick Pelissier
9e8ad9bfd9
Fix format
2022-05-09 22:48:56 +02:00
Patrick Pelissier
95b104ee48
Issue in generation of functions:
...
if the method in the oplist uses API_* transformation,
if this method is a macro itself,
it may delay the expansion too much and
the macro may not be expanded at all in the final code generation.
Fix issue by adding a supplementary evaluation in the macro expansion.
Add test cases
2022-05-06 01:10:31 +02:00
Patrick Pelissier
dc487c7e64
Add support for EMPLACE_TYPE for variant
2022-04-28 23:10:27 +02:00
Patrick Pelissier
e1abf0528c
Rename M_DEFAULT_OPLIST in M_BASIC_OPLIST (cleaner name)
2022-04-08 22:54:29 +02:00
Patrick Pelissier
b8cd679679
Move generating macro into the m_ namespace and create a wrapper using historical names for compatibility with existing code
2022-03-24 20:46:49 +01:00
Patrick Pelissier
5e57338928
Rename string_ into m_string_ in header files (Test files still test classic API)
2022-03-20 18:30:32 +01:00
Patrick Pelissier
19b01b404d
Migrate to 2022
2022-03-12 20:25:45 +01:00
Patrick Pelissier
1a1339da6b
Remove deprecated features
2021-11-20 13:05:50 +01:00
Patrick Pelissier
6b064870f5
Rename CLEAN operator in RESET operator
2021-10-30 23:26:27 +02:00
Patrick Pelissier
510cd062ba
Rename DICT, TUPLE & VARIANT _clean in _reset to avoid confusing _clean & _clear functions. See #97
2021-10-28 17:51:17 +02:00
Patrick Pelissier
a950e15625
Adding method for NAME operator for basic containers
2021-06-12 11:11:30 +02:00
Patrick Pelissier
165ec09061
Rename user customizable macros
...
to be compliant with other
and clearer that they can be customized.
2021-02-20 00:10:26 +01:00
Patrick Pelissier
517da1b999
Rename generated internal functions
...
to avoid "poluting" userspace naming.
2021-02-13 11:45:05 +01:00
Patrick Pelissier
25497bd96f
Factorize code so that _DEF macros use _DEF_AS ones
2021-02-07 23:04:59 +01:00
Patrick Pelissier
493e38abfc
Fix formatting
2021-02-07 00:31:15 +01:00
Patrick Pelissier
07eb5697ab
Remove limitation of M_AS_STR to be called within a M_APPLY
2021-02-06 22:22:50 +01:00
Patrick Pelissier
25fe26deaa
Happy new year
2021-01-13 20:18:01 +01:00
Patrick Pelissier
1b4c608087
Rename operator TEST_EMPTY into EMPTY_P to be compliant with iterator operator
2021-01-07 22:13:10 +01:00
Patrick Pelissier
a29682ca29
Create M_ASSERT macro to encapsulate assert within M*LIB
...
The goal is to enable the user to override this macro if needed so that it can enable or disable the M*LIB witout impacting its own assertions.
2020-10-29 22:46:17 +01:00
Patrick Pelissier
54d4b80368
Reformat macro to 80 characters
2020-10-21 23:23:40 +02:00
Patrick Pelissier
ad4dcae1db
Add macro VARIANT_DEF2_AS
2020-10-03 14:07:14 +02:00
Patrick Pelissier
b3fa63c971
Factorization of name usage
2020-10-03 14:07:14 +02:00
Patrick Pelissier
b3a1a75f6f
Rename internal types:
...
a suffix ending with _ct means confidential type
ans is reserved for M*LIB internal usage.
OPLIST doesn't use the external types
but rather the internal types.
It enables to be independent of the real names
of the external types.
Such external names are planned to be fully customizable
(i.e. the user may define a name that suits its coding style)
2020-10-03 14:07:14 +02:00
Patrick Pelissier
b1b32f565d
Transform TAB into SPACE.
2020-07-25 18:15:57 +02:00
Patrick Pelissier
56d2a74818
Fix some warnings
2020-07-09 23:38:34 +02:00
Patrick Pelissier
8a36b5ff15
Workaround to avoid CLANG unused function warnings
2020-07-09 22:14:00 +02:00
Patrick Pelissier
ef74f8eb55
Fix other warnings about conversion but in C++
2020-06-14 01:10:37 +02:00
Patrick Pelissier
78d0bfb286
Port new error oplist format to all containers.
2020-05-30 18:00:43 +02:00
Patrick Pelissier
92bddcaab4
Fix preprocessing issue
...
in case of recursive tuple or variant.
2020-05-30 12:13:43 +02:00
Patrick Pelissier
3784f653d9
Fix warning with CLANG
2020-05-27 21:41:11 +02:00
Patrick Pelissier
7761fb6bf1
Add contract for tuple & variant.
2020-05-24 19:08:18 +02:00
Patrick Pelissier
3885cb29a2
Add control of type and oplists
2020-05-17 11:53:27 +02:00
Patrick Pelissier
3cde7a1731
Add protection for use of oplist within a container oplist
2020-05-15 21:46:03 +02:00
Patrick Pelissier
6774afd751
Add checks of missing oplist in the last _DEF macros
2020-05-11 20:54:50 +02:00
Patrick Pelissier
4f7b0b9455
Happy new year 2020
2020-01-04 15:41:06 +01:00
Patrick Pelissier
90f248fbe8
Rename interface field of serial object into m_interface (WINDOWS compatibility as it defines a macro called interface)
2019-12-06 21:13:37 +01:00
Patrick Pelissier
60a10eb799
Uniformize the macro names
2019-06-09 12:02:38 +02:00
Patrick Pelissier
1e011cb851
Add missing const in prototypes.
2019-06-08 09:59:16 +02:00
Patrick Pelissier
9ef4b5c93f
Fix cast
2019-05-18 11:17:14 +02:00
Patrick Pelissier
d11409bcc6
Add proper cast
2019-05-18 11:17:14 +02:00
Patrick Pelissier
05a68157bc
Add local argument to serial interface to enable serial interface to create local parameters if needed (for example for serial binary)
2019-05-18 11:17:14 +02:00
Patrick Pelissier
4701d5919b
Fix serial import/export for variant
2019-05-18 11:17:14 +02:00
Patrick Pelissier
dcf7a94728
Add in_serial / out_serial for variant
2019-05-18 11:17:14 +02:00