501 Commits
Author SHA1 Message Date
Patrick Pelissier 85d72c3c75 Move macro into its proper section. 2017-05-12 23:55:46 +02:00
Patrick Pelissier 77cf72f8d1 Update comment. 2017-05-08 12:41:26 +02:00
Patrick Pelissier 32989ef17e Add M_DO_MOVE macro 2017-05-01 17:42:51 +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 8ce7db4033 Fix some issues in Open Addressing dict. 2017-04-24 09:49:34 +02:00
Patrick Pelissier fc3d3901ee Add OOR_OPLIST operator for dict / Open Addressing. 2017-04-24 09:01:43 +02:00
Patrick Pelissier d19e1a5b41 Add M_EMPTY_DEFAULT which is like M_NOTHING_DEFAULT except that it doesn't
evaluate its arguments.
2017-04-23 23:36:08 +02:00
Patrick Pelissier d9fccab98e Remove warning about unused variables. 2017-04-23 23:02:33 +02:00
Patrick Pelissier bcfeb92d43 Remove default move operators (which are unsafe for [] arrays) 2017-04-23 22:55:53 +02:00
Patrick Pelissier 1739de33c2 Remove hard dependency of INIT_MOVE operator for buffer. 2017-04-23 22:52:47 +02:00
Patrick Pelissier 82a6bc7e72 Add CMP for CSTR 2017-04-22 18:08:56 +02:00
Patrick Pelissier 5c23fd64cc Add M_CSTR_OPLIST oplist for const char * 2017-04-22 11:18:10 +02:00
Patrick Pelissier 6bd5770b3a Speed up compilation speed a few by reducing the expansion of the some very used expressions.
Remove wrong assertion (length can be 0 for empty string).
2017-04-19 22:38:49 +02:00
Patrick Pelissier b60cc58980 Change FNV1A Meiyan hash by FNV1A Jesteress 2017-04-18 23:21:53 +02:00
Patrick Pelissier 02be3b6d69 Remove internal dict macros for core macro. 2017-04-17 19:19:58 +02:00
Patrick Pelissier 6bcc54dd45 Fix spelling 2017-04-17 00:07:08 +02:00
Patrick Pelissier 29b23cae98 Add specialization for HASH functions if C11. 2017-04-16 15:07:10 +02:00
Patrick Pelissier d5e235ed8e Generalize clear default into nothing default. 2017-04-16 14:15:33 +02:00
Patrick Pelissier 898d117ceb Fix issue with C++ (missing brackets) 2017-04-07 17:29:50 +02:00
Patrick Pelissier 637dfbc9c4 Fix issue with C++: add a cast (which is stupid and error prone). 2017-04-07 17:21:52 +02:00
Patrick Pelissier 950336e0c3 Fix potential buffer overflow. 2017-04-07 17:20:40 +02:00
Patrick Pelissier 4991386bb7 Add FREE operator.
Use it instead of DEL if necessary.
2017-04-06 01:21:11 +02:00
Patrick Pelissier 49f71d96b3 Add operator MEMPOOL & MEMPOOL_LINKAGE 2017-04-01 13:59:25 +02:00
Patrick Pelissier 0bfa96e5af Add new macro M_SAFE_C 2017-03-31 00:03:02 +02:00
Patrick Pelissier 99ecc762bf Fix operator REALLOC 2017-03-30 22:19:47 +02:00
Patrick Pelissier c64c875969 Implement Meiyan Hash (Much faster)
Tests do not pass due to new alignement constraint.
2017-03-29 00:34:05 +02:00
Patrick Pelissier eeded8e80e Fix issues with hash functions. 2017-03-27 23:52:53 +02:00
Patrick Pelissier 32d22fef51 EXPECTED_SIZE can be overloaded by oplist now. 2017-03-23 21:51:31 +01:00
Patrick Pelissier eb56e31c18 Add REALLOC operator 2017-03-19 19:54:09 +01:00
Patrick Pelissier dd1a7c13f2 Add MACRO M_VA 2017-03-18 20:38:59 +01:00
Patrick Pelissier 5022c1edb7 Add M_TYPE_FROM_FIELD 2017-03-15 22:06:10 +01:00
Patrick Pelissier 27d41f9330 Add NEW operator 2017-03-15 00:17:15 +01:00
Patrick Pelissier dc87d7e137 Add M_SWAP macro. 2017-03-14 21:20:52 +01:00
Patrick Pelissier 6cdad58bd6 Add SWAP as operator. 2017-03-14 20:21:14 +01:00
Patrick Pelissier 35df7feae0 Update comments.
Fix bug for UPDATE operator
2017-03-13 12:32:56 +01:00
Patrick Pelissier 40f2c9dd41 Fix bug :
* due to the huge number of new operator within oplist, the previous limit of 26
 operators wasn't enought. Increase it to 52.
2017-03-13 11:21:13 +01:00
Patrick Pelissier c09ce9c949 Add IT_END operator 2017-03-13 10:32:27 +01:00
Patrick Pelissier d4bc5593fa Add forgotten header 2017-03-12 18:22:24 +01:00
Patrick Pelissier 3a9eeaa934 Fix bug of dual initialization when using M_LET macro. 2017-03-11 17:30:20 +01:00
Patrick Pelissier 52724eaa10 Add classic type to M_CLASSIC_OPLIST 2017-03-11 16:50:24 +01:00
Patrick Pelissier 5f67da4914 Add M_CLASSIC_OPLIST macro 2017-03-11 11:44:34 +01:00
Patrick Pelissier 14311272ca Minor cosmetics change 2017-03-07 22:57:44 +01:00
Patrick Pelissier ac8c712dbb Modify M_EACH to support container where only IT_CREF is defined
(and not IT_REF).
2017-03-07 22:42:47 +01:00
Patrick Pelissier fba63cae2b Fix issue with C++ build for M_ASSIGN_CAST. 2017-03-06 22:04:22 +01:00
Patrick Pelissier b38a926f3c Adding OUT_STR & GET_STR operators for variants 2017-02-28 22:42:20 +01:00
Patrick Pelissier 60399f25ec Document some macros of 'm-core' 2017-02-24 23:28:12 +01:00
Patrick Pelissier a3811b52ee Factorize the hash system.
Insert option to select the hash at dynamic time.
2017-02-21 21:34:40 +01:00
Patrick Pelissier 8d0d8cfc50 Fix issue 2017-02-21 21:10:07 +01:00
Patrick Pelissier 4d019ca1f2 Update library name in headers. 2017-02-20 21:29:21 +01:00
Patrick Pelissier cb433aa2a8 Rename macros:
* CAT* --> M_C*
2017-02-19 00:36:42 +01:00