Commit Graph
670 Commits
Author SHA1 Message Date
Patrick Pelissier 07db846f3b Rename internal string functions to be compliant with new scheme. Not sure if this scheme will remain however (still searching for a better naming that fits all criteria). 2021-03-01 22:18:32 +01:00
Patrick Pelissier 3b6907b743 Add more test cases. 2021-02-23 16:24:46 +01:00
Patrick Pelissier 8e9aa9cac4 Fix _min & _max for B+Tree
Make code match the documentation if there is no element in the tree.
2021-02-23 15:59:45 +01:00
Patrick Pelissier a98ce5ea91 Remove unused test file 2021-02-22 18:59:49 +01:00
Patrick Pelissier 7b2e242c94 Add function bitset_popcount 2021-02-22 12:06:46 +01:00
Patrick Pelissier 5fd6352a4e Add more tests for bitset_resize 2021-02-22 11:40:29 +01:00
Patrick Pelissier 3377acd9e6 Test another bit for _pop_at 2021-02-22 11:30:59 +01:00
Patrick Pelissier 709168652a Reformat and specify clz for bitset size = 0 2021-02-21 21:41:51 +01: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 333047fc4c Make assertions more robust.
Fix read out of bound (with test cases).
2021-02-14 00:15:43 +01:00
Patrick Pelissier 6636800c5b Remove obsolete / deprecated function/macros. 2021-02-13 11:45:16 +01:00
Patrick Pelissier c4d339cb62 Rename internal interface. 2021-02-13 11:45:16 +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 0515cfd068 Add macro M_GREATER_THAN_P & M_LESS_OR_EQUAL_P (src, tests, doc) 2021-02-07 09:53:13 +01:00
Patrick Pelissier d85df43329 Replace UNERDLOW/OVERFLOW by M_UNDERFLOW/M_OVERFLOW as some systems (Windows/MacOS) perform '#define UNDERFLOW value' in their headers, preventing the detection at preprocessing time. 2021-02-07 09:36:00 +01:00
Patrick Pelissier 16e2e07d41 * Fix M_REVERSE as per the doc (don't add parenthesis on the returned arglist). * Update usage to take this into account. 2021-02-07 00:50:10 +01:00
Patrick Pelissier 6e006d216b Add macro M_GREATER_OR_EQUAL_P (src, test, doc) 2021-02-07 00:25:47 +01:00
Patrick Pelissier da613ad188 * Add macro M_LESS_THAN_P (src, test, doc). * Robustify M_INC & M_DEC so that overflow & underflow keeps returning overflow & underflow 2021-02-07 00:10:55 +01:00
Patrick Pelissier 480a791f4c Update tests 2021-02-06 23:41:04 +01:00
Patrick Pelissier f2d5de252b Add M_FILTER and M_FILTER_C macros (src, tests, doc) 2021-02-06 23:24:55 +01:00
Patrick Pelissier 0cb1a8054f Add M_REPLICATE & M_REPLICATE_C (src, test, doc) 2021-02-06 22:32:38 +01:00
Patrick Pelissier 9eba30648d Rename M_INVERT into M_REVERSE to be more coherent with REVERSE operator 2021-02-06 21:58:45 +01:00
Patrick Pelissier ad39cdd393 Add some tests for new function 2021-02-05 00:17:18 +01:00
Patrick Pelissier 8597b0b8c0 Fix warning on clang and old gcc 2021-01-18 18:21:01 +01:00
Patrick Pelissier bce86460fe Rewrite test cases to avoid potential warnings 2021-01-18 18:16:05 +01:00
Patrick Pelissier 25fe26deaa Happy new year 2021-01-13 20:18:01 +01:00
Patrick Pelissier 15a02e3306 Update final message 2021-01-10 20:04:14 +01:00
Patrick Pelissier 944d29e8bc Workaround CLANG preprocessor failure on Windows platform 2021-01-10 20:03:28 +01:00
Patrick Pelissier aefba70c1e Rework once again how to detect a failure in an application:
IF errorlevel 1 only works for positive error code
  IF not errorlevel 0 only works for negative error code
There are not reliable. So, use && and || instead.

Remove expected failure on test as all tests pass now
(and it was broken).
2021-01-10 18:08:48 +01:00
Patrick Pelissier 8a9d5f6a00 Add macro string_sets (like string_cats) 2021-01-10 09:51:38 +01:00
Patrick Pelissier 3df2408ffb Add macro M_CSTR 2021-01-10 09:26:27 +01:00
Patrick Pelissier c4f23640d5 Add test for string_cats 2021-01-07 22:13:10 +01:00
Patrick Pelissier 06b79a6caa Add tests for M_AS_TYPE 2021-01-07 22:13:10 +01:00
Patrick Pelissier a580aaac83 Add more test cases for M_EMPTY_P 2020-12-31 00:11:37 +01:00
Patrick Pelissier 826ecf76c0 Workaround a compiler warning 2020-12-30 19:02:00 +01:00
Patrick Pelissier 2cf5bff32d Fix negative error code termination for MSVS (See #86) 2020-12-30 17:58:43 +01:00
Patrick Pelissier 76b9f9a715 Add test cases for M_GET_STRING 2020-12-26 08:58:52 +01:00
Patrick Pelissier 211121435d Fix warning in C++ mode with G++ 10 2020-12-24 08:13:44 +01:00
Patrick Pelissier ad16b310e1 Fix overflow issue in bitset_last_p (see #81) 2020-12-21 15:08:19 +01:00
Patrick Pelissier 4dbcfd25b3 Fix non support of break in M_LET_IF 2020-12-16 15:27:41 +01:00
Patrick Pelissier 15d0b86c62 Update documentation & add tests as per lastest changes 2020-12-16 11:07:11 +01:00
Patrick Pelissier e893560a48 Add macros M_LET_IF and M_DEFER to help handling with runtime errors 2020-12-14 21:26:07 +01:00
Patrick Pelissier ef614b19ee Fix ISO C warning. 2020-12-05 18:33:26 +01:00
Patrick Pelissier 1c5c4aa50f Fix compatibility with C++
which doesn't support designated init.
2020-12-05 18:28:30 +01:00
Patrick Pelissier 5533ffffaa Add tests for intrusive shared pointers. 2020-12-05 18:14:38 +01:00
Patrick Pelissier 26eb882a30 Rename tuple function :
* _init_set2 in _init_emplace
* _set2 in _emplace
due to better & clearer naming.
(API break)
2020-12-05 12:29:20 +01:00
Patrick Pelissier f89ba94689 Add test for computing C-string hash (raise assertion failure) 2020-11-29 19:35:52 +01:00
Patrick Pelissier b343d356c3 Add support for empty replaced string 2020-11-22 23:29:38 +01:00
Patrick Pelissier 55e7b3083a Add function string_replace_all[_str]
to replace all occurences of a string by another.
2020-11-22 23:04:32 +01:00