Commit Graph
372 Commits
Author SHA1 Message Date
Patrick Pelissier 1bef7c1977 Fix formatting 2022-06-13 23:21:06 +02:00
Patrick Pelissier 5ac08e42d8 Adding const for the type generation in emplace 2022-06-04 23:40:36 +02:00
Patrick Pelissier f26e1e5a12 Fix issue in case of recursive call of INIT_WITH with conditionnal INIT_WITH 2022-06-04 23:27:13 +02:00
Patrick Pelissier b5a3e010d8 Add {} for if 2022-05-26 22:13:24 +02:00
Patrick Pelissier 85ea92d83b Review of m-core.h
* Add control of MSVC preprocessor
* Add comments
* Remove useless evaluation pass
* Rewrite some evaluation pass to be faster.
2022-05-11 21:38:47 +02:00
Patrick Pelissier 58eed79413 Register the oplist associated to unsigned 2022-05-04 22:25:15 +02:00
Patrick Pelissier 845ab1fef0 Update comment 2022-04-28 23:03:04 +02:00
Patrick Pelissier 6caeea98b9 Add M_INIT_EMPLACE_VAI macro for INIT_WITH containers with emplace support 2022-04-23 10:21:17 +02:00
Patrick Pelissier c5d37ce028 Update comments 2022-04-23 10:03:51 +02:00
Patrick Pelissier 112b405df6 Reformat 2022-04-23 10:01:39 +02:00
Patrick Pelissier 3a53044198 Add M_EMPLACE macros to enables generic generation of EMPLACE functions 2022-04-20 22:43:12 +02:00
Patrick Pelissier 3632388315 Reorder macros to group then by logical entity. Remove M_INVERT obsolete macro 2022-04-18 21:22:45 +02:00
Patrick Pelissier 6ee82e885b Update comments 2022-04-18 11:09:12 +02:00
Patrick Pelissier 9269473e10 Remove M_APPLY_SIZEOF 2022-04-18 10:04:11 +02:00
Patrick Pelissier c8611ce708 Update comments 2022-04-18 09:44:13 +02:00
Patrick Pelissier d8fd43e9e9 Update comments & avoid using M_ID for internal macros 2022-04-18 09:41:43 +02:00
Patrick Pelissier a2e471620d Add support for '_' meta keyword 2022-04-18 09:24:32 +02:00
Patrick Pelissier 5c98d47d8c Add M_KEYWORD_TO_VA_ARGS 2022-04-17 19:01:21 +02:00
Patrick Pelissier 60734bdb2b Avoid using M_ID / M_OPFLAT in context where it could be used recursively 2022-04-15 23:44:07 +02:00
Patrick Pelissier e71b19424b Simplify definition of M_EMPTY_P & M_PARENTHESIS_P 2022-04-14 23:50:40 +02:00
Patrick Pelissier c6921536f7 Add M_AND3 & M_OR3 macros 2022-04-13 22:48:40 +02:00
Patrick Pelissier 8c01acb8d2 Remove M_IF_DEFAULT1 (bad interface).
Fix warning in M_DEFAULT_ARGS in some cases.
2022-04-10 23:10:58 +02:00
Patrick Pelissier 69cef8249a Update comments and move section 2022-04-09 00:11:51 +02:00
Patrick Pelissier 473df16a5a Update description & assertion of HASH functions 2022-04-08 23:38:33 +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 ef0b335f67 Rename M_CHECK_DEFAULT_TYPE in M_CHECK_BASIC_TYPE, and makes it more stricter in C11. Start separating default macros from basic macros (that perform control & check) 2022-04-08 20:57:06 +02:00
Patrick Pelissier 9baca84825 Add operator EMPLACE_TYPE, to be used by future emplace methods 2022-03-30 23:11:07 +02: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 811fa57cbc Fix generic API: remove the need of superfluous () 2022-03-17 19:33:46 +01:00
Patrick Pelissier ac9989e4ff Add generic API transformation
in the framework responsible of expanding
the call to a method from an operator.

The generic API transformation can
support a wide range of call
(Limited to 9 arguments maximum)
2022-03-16 22:29:57 +01:00
Patrick Pelissier 7268551737 Add micro utilities macros for handling list 2022-03-16 22:29:56 +01:00
Patrick Pelissier 823b1974bb Update comments 2022-03-16 22:29:56 +01:00
Patrick Pelissier 07a5d0ed0a Define M_USE_SMALL_NAME user macro 2022-03-15 19:04:45 +01:00
Patrick Pelissier 19b01b404d Migrate to 2022 2022-03-12 20:25:45 +01:00
Tim Gates 7b6bfac7cb docs: Fix a few typos
There are small typos in:
- example/ex-algo03.c
- m-algo.h
- m-core.h
- m-dict.h
- m-string.h

Fixes:
- Should read `occurrence` rather than `occurence`.
- Should read `fulfilled` rather than `fullfilled`.
- Should read `dictionaries` rather than `dictionnaries`.
- Should read `environment` rather than `environement`.
- Should read `unordered` rather than `undordered`.
2021-12-23 10:00:44 +11:00
Patrick Pelissier 9926b51da0 Revert 829c20ba8 as there is an issue in calling M_KEYWORD_P within M_IF. 2021-11-20 10:15:31 +01:00
Patrick Pelissier 829c20ba8a Update M_KEYWORD_P to support () . Add more recognized keywords (type, list, LIST, queue, QUEUE, INIT_WITH) 2021-11-13 19:51:23 +01:00
Patrick Pelissier 62c8ac3e5d V0.6.0 2021-11-11 19:59:19 +01:00
Patrick Pelissier b2d3d86e0c Add alternative macro M_TEST_METHOD_ALTER_P 2021-11-03 20:54:03 +01:00
Patrick Pelissier a9fc7e15f8 Rename GET_SET_KEY operator in SAFE_GET_KEY operator 2021-10-30 23:57:50 +02:00
Patrick Pelissier 6b064870f5 Rename CLEAN operator in RESET operator 2021-10-30 23:26:27 +02:00
Patrick Pelissier 7a08ddce9e Remove UPDATE opertor as there are no default operators that define it (and no one uses it as it is poorly documented). Replace by SET for RB-THREE. Replace by ADD for the splice function of dictionary 2021-10-02 13:06:30 +02:00
Patrick Pelissier 9c2468c2b7 Update comments. 2021-08-15 21:27:54 +02:00
Patrick Pelissier 7f79abec3f Fix issue with INIT_WITH of array/list/....
combined with tuple:
_push_back_raw was used within an expanded macro
and as a consequence was expanded multiple times,
resulting in adding a new term in the sequence
for each field of the tuple.
2021-07-04 00:01:00 +02:00
Patrick Pelissier 368392fb8f Add CLEAN operator for default oplist
(same as INIT operator)
2021-07-01 22:12:15 +02:00
Patrick Pelissier ca65d81b60 * Fix conflict between M_MAP2 /M_MAP2B
(this arises through M_LET & M_GET_METHOD)

* Rename M_GET_OPPROPERTY into M_GET_PROPERTY

* M_LET can be configured to always use INIT_WITH for special kind of objects.
2021-07-01 22:12:15 +02:00
Patrick Pelissier dedb79dbc5 Use of new initializer macro 2021-07-01 22:12:15 +02:00
Patrick Pelissier 5c612ce521 Update M_LET to handle both set & init_with depending on the user syntax. Add M_INIT_WITH_VAI to use this new feature. 2021-07-01 22:12:15 +02:00
Patrick Pelissier 61671d1b18 Minor fix 2021-07-01 22:12:15 +02:00
Patrick Pelissier a19a010d1e Add WIP version for a M_LET recursive 2021-07-01 22:12:14 +02:00