36 Commits
Author SHA1 Message Date
Patrick Pelissier fd9d308b28 Allow tuple initilization in M_LET 2018-10-27 09:28:17 +02:00
Patrick Pelissier 546b756932 Port TUPLE & VARIANT to API transformation infrastructure. 2018-09-25 21:38:31 +02:00
Patrick Pelissier 3452b72add Fix regression of M*LIB:
oplist of tuple/variant wasn't able to detect the default INIT creation
as no valid OPLIST was passed in the absence of OPLIST.
Give the explicit default OPLIST in this case.
2018-09-15 15:30:03 +02:00
Patrick Pelissier 2e3b312fab Fix issue of recursive usage of M_GLOBAL_OPLIST_OR_DEF
Update the way to use the macro to avoid being limited by the
preprocessor limitation.
2018-09-14 20:57:55 +02:00
Patrick Pelissier 9c0724ddb9 Simplification. 2018-09-08 09:10:37 +02:00
Patrick Pelissier ce948bd9ce Make INIT optional for TUPLE. 2018-09-08 09:02:54 +02:00
Patrick Pelissier c9ebedb01f Rename _get_ methods for tuple & variants into _get_at_ methods.
Add _cget_at_ methods too.
2018-08-21 23:58:03 +02:00
Patrick Pelissier 8f85c71654 Rename some internal macros to a better name. 2018-08-21 22:15:11 +02:00
Patrick Pelissier 6ef9936e24 Fix issue of recusrive definition of TUPLE using GLOBAL oplist:
There was a recursive call of M_REDUCE2 that fails to expand properly on its second invocation
Rewrite fully how global oplists are implemented:
it performs a first pass to expand the oplists, and the a separate pass to define the functions.
This enables to separate the pass, and use M_REDUCE2 in both.
2018-08-19 08:28:17 +02:00
Patrick Pelissier 0046157862 Fix issue for SWAP method not exported correctly for tuple. 2018-08-14 08:00:16 +02:00
Patrick Pelissier acbf1efad6 Fix issue: CLEAN method was not properly exported by tuple. 2018-08-14 07:58:37 +02:00
Patrick Pelissier c52c41c885 Export CLEAN method for tuple if it is defined. 2018-08-13 20:14:37 +02:00
Patrick Pelissier 822f9aacf6 Add CLEAN method for tuple. 2018-08-13 20:05:32 +02:00
Patrick Pelissier 7d83603646 TUPLE: Oplist is now optional for tuple definition. 2018-08-06 23:20:02 +02:00
Patrick Pelissier 96202aa78f Do not use reserved identifiers of the C standard (See 7.1.3 Reserved identifiers) 2018-07-14 14:35:14 +02:00
Patrick Pelissier cd1d59264e Fix build issue with C++ 2018-06-29 22:50:41 +02:00
Patrick Pelissier e16d352e71 Fix prototype (forgot const) 2018-06-29 19:41:20 +02:00
Patrick Pelissier dc92ad9c02 Fix compatbility issue with C++ which doesn't support
compound literal...
2018-05-21 23:00:48 +02:00
Patrick Pelissier 281f567d97 Add proper usage of const. 2018-05-19 11:10:09 +02:00
Patrick Pelissier 1a3cd2f626 Add experimental support for cmp function with user define order. 2018-05-16 22:36:26 +02:00
Patrick Pelissier dcd300211f Add methods _cmp_field for tuples. 2018-05-14 22:29:58 +02:00
Patrick Pelissier 1bf80cf315 Add function _parse_str 2018-05-03 13:37:19 +02:00
Patrick Pelissier ac5b689950 Add method _set2 for tuple. 2018-04-30 20:00:26 +02:00
Patrick Pelissier 210e05f7fc Update copyright to 2018 2018-01-29 20:28:30 +01:00
Patrick Pelissier 2e564088b0 Simplify the inclusion of headers. 2017-09-16 10:14:45 +02:00
Patrick Pelissier 44cdfa0c77 Remove use of feof and ferror as it is not needed as the return of fgetc
is sufficent.
2017-08-19 21:05:55 +02:00
Patrick Pelissier ffc383884d Add macro M_HASH_FINAL 2017-08-17 20:22:01 +02:00
Patrick Pelissier 27fd810259 Rename M_OPLIST_CAT into M_OPCAT, M_OPLIST_FLAT into M_OPFLAT
Add M_OPLIST_EXTEND
Use it instead of M_OPLIST_CAT.
2017-05-01 17:24:22 +02:00
Patrick Pelissier 88711fae6c Fix #8:
get the operator NEW / DEL / REALLOC from the first element of the tuple / variant.
2017-03-30 22:20:23 +02:00
Patrick Pelissier f653676511 Add SWAP for tuple 2017-03-14 21:44:21 +01:00
Patrick Pelissier fb1b2705d0 Fix bug in exported oplist 2017-03-11 11:52:54 +01:00
Patrick Pelissier dfb62fcadb Move external sections at the top. 2017-03-06 22:15:21 +01:00
Patrick Pelissier c9f05c21da Fix hash function. 2017-02-28 21:10:58 +01:00
Patrick Pelissier ec109dddf9 Add missing operators in oplist for tuple 2017-02-26 23:51:59 +01:00
Patrick Pelissier cb433aa2a8 Rename macros:
* CAT* --> M_C*
2017-02-19 00:36:42 +01:00
Patrick Pelissier 8e9d20ba1a Add initial stuff 2017-02-18 18:51:04 +01:00