Commit Graph
371 Commits
Author SHA1 Message Date
Patrick Pelissier fcdfd836ec Add method _count_if 2018-07-15 11:05:58 +02:00
Patrick Pelissier b2f005239b API breakage:
rename _constains into _contain_p
to be more uniform with other predicate functions,
and to use infinitive form for the method.
2018-07-15 10:54:38 +02:00
Patrick Pelissier bc3fa890bd Add method _find_if. 2018-07-15 10:48:22 +02:00
Patrick Pelissier 22f2ae7341 Add methods _all_of_p, _any_of_p and _none_of_p. 2018-07-14 18:21:46 +02:00
Patrick Pelissier cef8a13cc2 Add a new test. 2018-07-14 14:18:25 +02:00
Patrick Pelissier 8dafe3b7a6 Add macro M_GET_AT. 2018-07-04 17:39:03 +02:00
Patrick Pelissier 9d7fc942f7 Rename DICT_SET_DEF2 into DICT_SET_DEF 2018-07-03 15:50:14 +02:00
Patrick Pelissier 4b0f7543ee Rename _set_at to _push method for SET dictionnary.
Add proper _splice method for SET dictionnary.
2018-07-03 10:40:26 +02:00
Patrick Pelissier 3765c0b0fb Add _equal_p method for OA dictionary. 2018-07-01 22:44:56 +02:00
Patrick Pelissier d1f2b62f66 Replace _set_at2 by _get_at for array.
(Break API)
2018-07-01 22:35:05 +02:00
Patrick Pelissier 26b8c1d0a2 Add method _move & _init_move. 2018-07-01 17:16:36 +02:00
Patrick Pelissier aa195f9f6f Add methods _cget. 2018-07-01 17:16:25 +02:00
Patrick Pelissier bf2a04ff66 Add method _get_at:
_get or create an entry.
2018-06-29 19:41:34 +02:00
Patrick Pelissier 817724ce39 Fix issue for get_word:
the separators need to be skipped first.
2018-06-29 19:40:35 +02:00
Patrick Pelissier 0fda117ffe Add push/pop_front/back_move methods. 2018-06-27 20:10:42 +02:00
Patrick Pelissier 522632bea6 Remove deprecated macro SNAPSHOT_DEF.
Shall use SNAPSHOT_SPSC_DEF
2018-06-27 20:04:18 +02:00
Patrick Pelissier 397f75a4db Add missing method _front for bitset. 2018-06-27 07:33:23 +02:00
Patrick Pelissier 0bf84a321b Add missing methods _capacity for MPMC queue & SPSC queue. 2018-06-27 07:28:34 +02:00
Patrick Pelissier 5915208dee API breakage:
Rename _pop method into _pop_at method
as the provided function is a _pop_at method, not a _pop method.
Remove _pop from the oplist as it doesn't follow _pop convention.
2018-06-27 07:17:33 +02:00
Patrick Pelissier 2d18171914 Rename _pop method into _pop_at methods
as the provided function follow the prototype of a _pop_at method
rather than a _pop method.
2018-06-27 07:13:10 +02:00
Patrick Pelissier 28f6a7d399 Add missing _empty_p methods for dictionnaries. 2018-06-27 07:10:18 +02:00
Patrick Pelissier 2f26d4ffd3 Add more tests / improve coverage. 2018-06-02 21:26:54 +02:00
Patrick Pelissier d306bae035 Generate cleaner coverage. 2018-06-02 21:26:32 +02:00
Patrick Pelissier 928fc077b8 Remove a warning. 2018-05-30 23:17:37 +02:00
Patrick Pelissier d40d23a50e Add test for _splice_at for Intrusive list. 2018-05-30 20:21:37 +02:00
Patrick Pelissier a3fad5966a Update test to reflect the new specifications. 2018-05-28 23:46:10 +02:00
Patrick Pelissier e5f5563249 Add method _splice_at for dual_push_list 2018-05-28 21:58:45 +02:00
Patrick Pelissier 2a6893efb4 Add method _splice_at for singly list. 2018-05-28 21:22:14 +02:00
Patrick Pelissier 7815feddba Proper expand algorithms for intrusive list. 2018-05-24 22:58:16 +02:00
Patrick Pelissier 40e9550b29 Generate algo for intrusive list. 2018-05-23 21:10:58 +02:00
Patrick Pelissier 64d0202f95 ALGO macros accept now a type instead of an oplist
if a global oplist has been registered for the type.

Add macro ALGO_LET_INIT_VA which declares, initializes, sets and clears
a container.
2018-05-22 20:39:51 +02:00
Patrick Pelissier 494ee2c099 Add proper check of allocation for testing object. 2018-05-22 05:46:04 +02:00
Patrick Pelissier 7ccede36b1 Test with deque too. 2018-05-19 12:52:40 +02:00
Patrick Pelissier d0fe7f3e25 Add method _push_move & _pop_move.
Add assertion on _pop_back to check that the container is not empty.
2018-05-19 11:21:57 +02:00
Patrick Pelissier 86083e3a92 Add methods push_move & pop_move.
Rewrite _pop_back to be a little bit faster for complex structure as it used
DO_MOVE instead of plain _set.
2018-05-19 11:21:18 +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 2fbea43a5c Add M_MAP3 macro. 2018-05-16 20:00:41 +02:00
Patrick Pelissier 2af35673bb Update comments about TODO. 2018-05-15 21:02:34 +02:00
Patrick Pelissier fc4dba4569 Add DSC versions of the _sort function to reverve the sort (DSC=descending). 2018-05-14 23:08:46 +02:00
Patrick Pelissier 47a2553356 Add new test on B*TREE as set. 2018-05-11 22:41:56 +02:00
Patrick Pelissier 67bf199254 Fix comparison of object.
memcmp compares object as little endian, which is not what we want.
2018-05-11 22:41:22 +02:00
Patrick Pelissier 0557527bfe Update format of serialisation for B+TREE:
as the tree is ordered, a '[]' has to be used.
2018-05-11 17:32:32 +02:00
Patrick Pelissier 680a850618 Add test of _in_str, _out_str, _get_str and _parse_str 2018-05-09 21:48:42 +02:00
Patrick Pelissier e9f603fa30 Rename internal calls to my_mpz* to testobj* 2018-05-08 10:40:29 +02:00
Patrick Pelissier 1a064e033b Rename mympz.h --> test-obj.h
as it is used only for testing purpose.
2018-05-08 10:29:51 +02:00
Patrick Pelissier ebcfcf9bfa Add I/O test for B+TREE 2018-05-07 23:08:47 +02:00
Patrick Pelissier cf063b75ff Update oplist to reflect all methods. 2018-05-07 23:08:12 +02:00
Patrick Pelissier 37191a53c3 Fix unclear variable. 2018-05-04 00:14:52 +02:00
Patrick Pelissier 42d420db6a Add generation for string. 2018-05-03 22:12:32 +02:00
Patrick Pelissier e855f27c8c Add method _parse_str for RBTREE.
NOTE: A refactorisation seems needed as all the in_str / parse_str
share a lot of the same algorithms. Maybe move them into algo?
2018-05-03 17:59:34 +02:00