Commit Graph
369 Commits
Author SHA1 Message Date
Patrick Pelissier 9cffd09848 clean target forward into bench directory 2017-05-02 15:12:49 +02:00
Patrick Pelissier f715cac6cf Fix bug reported by valgrind:
if s1==s2, memcpy call is illegal
 (but unlikely to fail).
2017-05-02 14:52:42 +02:00
Patrick Pelissier 774182967c Fix coverage computation. 2017-05-02 14:52:29 +02:00
Patrick Pelissier 2f569d7201 Add more tests. 2017-05-02 14:52:06 +02:00
Patrick Pelissier 515650da65 Rename examples. 2017-05-01 21:06:33 +02:00
Patrick Pelissier cb10fa9871 Add new example for Red-Black Tree 2017-05-01 19:02:14 +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 9600d3bfd5 Update example 2017-05-01 17:24:07 +02:00
Patrick Pelissier 40873e5224 Update example 2017-05-01 17:23:51 +02:00
Patrick Pelissier ae972c6cbb Update 2017-05-01 09:08:50 +02:00
Patrick Pelissier 0f6b99c03a Update comments. 2017-05-01 09:08:39 +02:00
Patrick Pelissier dcd83d20a3 Cleanup Makefile 2017-05-01 09:08:13 +02:00
Patrick Pelissier 4fe57d6042 Update README 2017-05-01 09:08:01 +02:00
Patrick Pelissier 323e400fc1 Add new reference. 2017-04-29 22:35:15 +02:00
Patrick Pelissier d57bae7198 Fix bug. 2017-04-29 22:33:25 +02:00
Patrick Pelissier e2e9f2db43 Remove gnu code from test. 2017-04-29 22:28:51 +02:00
Patrick Pelissier 58a4135d31 Minor update. 2017-04-29 22:27:38 +02:00
Patrick Pelissier 2a453e0879 Describe operator CLEAN 2017-04-26 23:52:19 +02:00
Patrick Pelissier 47babf5689 Add new test 2017-04-26 23:49:34 +02:00
Patrick Pelissier 768d41ddb6 New example 2017-04-26 23:47:46 +02:00
Patrick Pelissier 75db40a4ff Fix prototype of _reduce : dest may not be an array. It is therefore
needed to pass a pointer.

Add _map_reduce method.
2017-04-26 23:46:49 +02:00
Patrick Pelissier 6cee535ccd Add clean method for variant. 2017-04-26 22:52:29 +02:00
Patrick Pelissier 6d29968e34 Remove 'count' parameters (avoid to call free for alloc blocks: clear do everything
in one go).

Add contract.
2017-04-25 23:41:43 +02:00
Patrick Pelissier 2d9ee1b930 Fix scan-build 2017-04-24 23:22:58 +02:00
Patrick Pelissier cad77ab80b Fix issue for OA dict and shrink down:
we shall not call hash for deleted or empty entries.
2017-04-24 14:41:36 +02:00
Patrick Pelissier 1919d33602 Rewrite the way of handling the delete limits:
* count the number of deleted & populated items.
* if this number is greater than coeff_up, perform a shrink_up
* if the the population don't have more than half the size of the hash table,
* don't increase the hash table.
2017-04-24 13:22:46 +02:00
Patrick Pelissier 621f32649e Fix bug in dict oa for remove.
Improve assertions checks.
2017-04-24 10:39:39 +02:00
Patrick Pelissier 8ce7db4033 Fix some issues in Open Addressing dict. 2017-04-24 09:49:34 +02:00
Patrick Pelissier 4857137659 Bench dict Open Addressing. 2017-04-24 09:02:06 +02:00
Patrick Pelissier fc3d3901ee Add OOR_OPLIST operator for dict / Open Addressing. 2017-04-24 09:01:43 +02:00
Patrick Pelissier 7a60d8df62 Add Open Addressing implementation for dict:
* better for small type.
* need OOR_SET & OOR_EQUAL operators to handle out-of-range values.
2017-04-24 09:00:36 +02:00
Patrick Pelissier 3f9b6066d6 Got to C11. 2017-04-24 08:55:46 +02:00
Patrick Pelissier f53cba86eb Fix warning issue due to last change. 2017-04-24 08:55:28 +02:00
Patrick Pelissier 8a28d54e7f Simplify / factorize the types of RBTREE. 2017-04-23 23:59:06 +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 bc1e9239cc Clean up usage of policy within buffer. 2017-04-23 22:46:51 +02:00
Patrick Pelissier 997601c54a Rename M_C3(buffer_, name,_t) into buffer_t 2017-04-23 18:59:06 +02:00
Patrick Pelissier adf15bca6f Rewrite code to use dict_t & dict_it_t (clearer)
Add missing contracts.
2017-04-23 18:53:47 +02:00
Patrick Pelissier e2f0955385 Do the same for intrusive list. 2017-04-23 18:39:31 +02:00
Patrick Pelissier f1b38432aa More tests. 2017-04-23 10:13:38 +02:00
Patrick Pelissier 63d311a85b Add more tests. 2017-04-23 10:12:30 +02:00
Patrick Pelissier 22e9e52b13 Add more tests. 2017-04-23 10:10:57 +02:00
Patrick Pelissier 22dbf2bd9d Simplify the writing of the list type and list it type to make reading easier. 2017-04-23 10:07:21 +02:00
Patrick Pelissier b085b97c20 Define & use ARRAYI_CONTRACT for proper contract checking. 2017-04-23 09:58:58 +02:00
Patrick Pelissier 206f797e8f Rewrite the array to simplify the code and make it easier to read. 2017-04-23 09:42:40 +02:00
Patrick Pelissier a6ef9e953c Update README 2017-04-23 09:42:29 +02:00