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
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
6d0f063923
Add mempool benchmark.
2017-04-20 23:11:55 +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
9df884080d
Improve Makefile for older version of GCC.
2017-04-19 22:38:31 +02:00
Patrick Pelissier
618bc24bde
Improve the test to be hash independent.
2017-04-19 22:38:12 +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
dd012a504b
Fix test
2017-04-17 00:19:19 +02:00
Patrick Pelissier
f829dcdfe6
Add more tests.
2017-04-17 00:07:37 +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
c6482ff062
Change hash function for klib bench and use the right hash function for 64 bits.
2017-04-16 14:16:07 +02:00