This website requires JavaScript.
d70a971d2e
Add note
Patrick Pelissier
2018-04-15 20:59:04 +02:00
b05b515f3d
Reformat
Patrick Pelissier
2018-04-15 20:58:52 +02:00
12b15e0037
Add function array_splice just like function list_splice as it can be done faster at low level.
Patrick Pelissier
2018-04-15 11:41:32 +02:00
2c9169308b
Add code generation for OA dict
Patrick Pelissier
2018-04-15 10:53:55 +02:00
74a3d50c88
Minor optimization for _clean
Patrick Pelissier
2018-04-15 10:53:15 +02:00
6b8bb33221
Convert unsigned long to size_t in function prototypes for 32 bits systems.
Patrick Pelissier
2018-04-15 01:10:49 +02:00
175fb46508
Fix issue for 32 bits system
Patrick Pelissier
2018-04-15 00:48:31 +02:00
2f65400641
Add target checkall to lanch the test suite wih multiple compilers / options.
Patrick Pelissier
2018-04-15 00:40:48 +02:00
b5f4f2fc4b
Finish splitting m_core_clz into m_core_clz32 & m_core_clz64
Patrick Pelissier
2018-04-15 00:10:38 +02:00
8c34f44dae
Finish fixing for 32 bits / clz
Patrick Pélissier
2018-04-14 23:14:21 +02:00
d97f46133b
Fix issue for 32 bits systems mpz_core_clz wasn't reproductible for 32 bits system.
Patrick Pélissier
2018-04-14 23:08:53 +02:00
a94a5feb84
Fix issue with 32 bits systems (size_t != unsigned long)
Patrick Pélissier
2018-04-14 20:52:29 +02:00
ead5d7511a
Use of proper oplist with the CMP method.
Patrick Pelissier
2018-04-14 08:33:37 +02:00
1cd7446013
Add more instantiation of the containter
Patrick Pelissier
2018-04-14 08:27:26 +02:00
40747a463b
Remove dependecies from GMP header, allowing to run the test suite without GMP
Patrick Pelissier
2018-04-14 08:16:31 +02:00
8e20118ab6
Reformat
Patrick Pelissier
2018-04-14 08:12:58 +02:00
19f330e670
Rename also MYMPZ2_OPLIST into MY_MPZ_CMP_OPLIST
Patrick Pelissier
2018-04-14 08:12:27 +02:00
20d549b5e1
Rename MYMPZ_OPLIST into MY_MPZ_OPLIST
Patrick Pelissier
2018-04-14 08:11:14 +02:00
e09fa89781
Little bit rewrite to help the compiler optimizes the loop a bit more: as the variables are not longer on the stack, it uses more registers and more instructions in the critical loop than before. By copying the data into stack local variable, the compiler is once again able to optimize the loop properly.
Patrick Pelissier
2018-04-14 08:07:01 +02:00
70b1421114
Update after review
Patrick Pelissier
2018-04-13 20:56:48 +02:00
b80a30785a
Fix
Patrick Pelissier
2018-04-13 20:28:57 +02:00
c3245ac301
Full refactorisation and proper use of M*LIB. Should be as fast as before.
Patrick Pelissier
2018-04-13 20:28:01 +02:00
085d5b411c
Add oplist for B*TREE
Patrick Pelissier
2018-04-13 20:16:23 +02:00
8c26d6d0b5
Update
Patrick Pelissier
2018-04-12 23:39:19 +02:00
76f5085e84
Merge branch 'master' of https://github.com/P-p-H-d/mlib
Patrick Pelissier
2018-04-11 22:42:46 +02:00
80d78e3270
Add bounded string cte macro
Patrick Pelissier
2018-04-11 22:42:22 +02:00
654521b74c
Add some tests of _equal_p
Patrick Pelissier
2018-04-10 23:25:04 +02:00
353d2d4cc9
Fix issue in copy of B*TREE: the _next field wasn't properly set for the deepest nodes.
Patrick Pelissier
2018-04-10 23:23:36 +02:00
b38d84419a
Add methods hash, eqal_p, out_str, in_str & get_str
Patrick Pelissier
2018-04-09 18:42:34 +02:00
0d085771e4
Add tests for new methods
Patrick Pelissier
2018-04-09 18:07:03 +02:00
f3b2b6b41e
Add methods _swap, _move & _init_move
Patrick Pelissier
2018-04-09 18:06:48 +02:00
fb35ad7ab3
Update due no new LIBSRT API.
Patrick Pelissier
2018-04-08 21:43:25 +02:00
cf6e721994
Fix wrong usage of CollectionC by the benchmark.
Patrick Pelissier
2018-04-08 21:32:57 +02:00
9faea5ff15
Rewrite bench code so that it computes what is expected.
Patrick Pelissier
2018-04-08 21:10:29 +02:00
fe18009bc0
Rewrite the loop so that the result is the same for dict and dict_oa.
Patrick Pelissier
2018-04-08 21:07:20 +02:00
10f900ea3e
Rewrite code to avoid warning if optimisations are turned on.
Patrick Pelissier
2018-04-08 20:27:37 +02:00
63874694f8
Rewrite the code to avoid some silly warnings on some implementation.
Patrick Pelissier
2018-04-08 20:01:04 +02:00
9b9e246e66
More tests
Patrick Pelissier
2018-04-08 11:16:31 +02:00
e6a6eb9be5
Fix issue in it_from for B+TREE
Patrick Pelissier
2018-04-08 11:13:48 +02:00
050bb5dbfa
Add tests for it_from & it_to_p for B+TREE
Patrick Pelissier
2018-04-08 11:13:22 +02:00
b005ec1845
Fix function max for B+TREE
Patrick Pelissier
2018-04-08 10:48:02 +02:00
f158a94e0a
Add tests for min & max
Patrick Pelissier
2018-04-08 10:47:52 +02:00
a166620a6d
Add method _from, _to_p, _min & _max for B+TREE
Patrick Pelissier
2018-04-08 10:39:27 +02:00
47fb467878
Add basic it test for B+tree
Patrick Pelissier
2018-04-08 07:24:56 +02:00
67af80c772
Fix issue in it_end for B+TREE
Patrick Pelissier
2018-04-08 07:22:34 +02:00
1f44155127
Add one more corner case
Patrick Pelissier
2018-04-07 12:11:50 +02:00
87a3ac4a76
Add test for methods _init_set & _set for B+tree
Patrick Pelissier
2018-04-07 12:10:50 +02:00
73354a04d5
Add method _init_set & _set for B+tree
Patrick Pelissier
2018-04-07 12:10:19 +02:00
cb3038e73c
Add more checks
Patrick Pelissier
2018-04-07 11:51:38 +02:00
b6ec31fe11
Add more test.
Patrick Pelissier
2018-04-07 11:50:18 +02:00
c7059a60ee
Add more tests
Patrick Pelissier
2018-04-07 11:44:16 +02:00
af49aaf8b1
Add more tests.
Patrick Pelissier
2018-04-07 11:42:12 +02:00
4149b8388b
Improve quality of coverage report by not expanding contract function.
Patrick Pelissier
2018-04-07 11:41:43 +02:00
df0d723714
Compute coverage for B+TREE
Patrick Pelissier
2018-04-07 11:28:50 +02:00
44209ed93e
Add more tests
Patrick Pelissier
2018-04-07 11:19:58 +02:00
930a3c8637
More tests.
Patrick Pelissier
2018-04-07 11:14:31 +02:00
d2f5698397
iMake oplist optional for BPTREE_DEF
Patrick Pelissier
2018-04-07 11:10:13 +02:00
42d9fc3284
Update doc
Patrick Pelissier
2018-04-07 00:43:51 +02:00
91db494898
Add basic iterator for B+tree I can't match the exact interface of a dictionary of the key and the value are in separate place in the structure (so I can't return a pair of (key,value)). Instead I return a pair of pointer (key_ptr, value_ptr). I don't see any other way which doesn't evolve copy of the key/value. For the RBtree interface, no such problem occurs.
Patrick Pelissier
2018-04-05 22:44:36 +02:00
75217d4914
Rewrite / cleanup
Patrick Pelissier
2018-04-04 22:57:47 +02:00
ceaf004719
Remove wrong comment
Patrick Pelissier
2018-04-04 22:55:19 +02:00
27b7380433
B+TREE: Add _size operator
Patrick Pelissier
2018-04-04 22:54:39 +02:00
7ca254ade9
B+TREE: Add _pop function.
Patrick Pelissier
2018-04-04 22:39:46 +02:00
c91864c2a7
B+TREE: _remove returns a boolean indicating if the item removed was present or not
Patrick Pelissier
2018-04-04 22:35:47 +02:00
4925297a35
Update doc
Patrick Pelissier
2018-04-04 20:27:44 +02:00
d7ece50ed0
Replace "Dict" by "DictOA" since KLIB uses an OpenAddressing dictionnary.
Patrick Pelissier
2018-04-03 20:13:18 +02:00
3ef4a9f413
Fix issue with the way of benching the BTREE of KLIB. Forgot to initialize the key in the search pass.
Patrick Pelissier
2018-04-03 20:10:11 +02:00
9768b5b37a
Add bench of B+TREE
Patrick Pelissier
2018-04-03 20:07:21 +02:00
e4cd999bd0
Test expansion of new container.
Patrick Pelissier
2018-04-03 20:01:24 +02:00
8e335535cc
Add new container without a value.
Patrick Pelissier
2018-04-03 20:01:04 +02:00
2f53d98806
Fix issue with kind_s being redefined if the macro is used again. Fix issue of not using proper method for type. Render usage of value optional so that we can create B+TREE with only keys.
Patrick Pelissier
2018-04-03 18:29:28 +02:00
5d99331358
Add expansion of a user type.
Patrick Pelissier
2018-04-03 18:29:16 +02:00
316022cde4
Add oplist with CMP operator
Patrick Pelissier
2018-04-03 18:28:51 +02:00
8d1abca8de
Add link to the comparison between STL & M*LIB
Patrick Pelissier
2018-04-03 12:47:44 +02:00
1b2e73eaa2
Prepare doc
Patrick Pelissier
2018-04-03 12:43:30 +02:00
6127371920
Add B+TREE container. Fix #4
Patrick Pelissier
2018-04-03 12:40:29 +02:00
7936dbbf8c
Minor fix
Patrick Pelissier
2018-03-31 16:31:47 +02:00
8aa45309a2
Update doc
Patrick Pelissier
2018-03-31 12:10:50 +02:00
d75237ba66
Update
V0.1.1
Patrick Pelissier
2018-03-31 12:05:42 +02:00
9909877771
Avoid warning with C++
Patrick Pelissier
2018-03-31 12:01:05 +02:00
64ef1f3aba
Fix classic issue with C++
Patrick Pelissier
2018-03-31 11:56:28 +02:00
d670e1a6bb
Update
Patrick Pelissier
2018-03-31 10:05:24 +02:00
7082a4dc24
Fix wrong initialization of ATOMIC_VAR_INIT for the emulation layer (wrong since the simplication of the atomic structure).
Patrick Pelissier
2018-03-31 10:04:41 +02:00
e6c9314c91
Reorder the list of other libraries.
Patrick Pelissier
2018-03-30 21:39:10 +02:00
3dccd4484e
Add nedtries
Patrick Pelissier
2018-03-30 21:35:19 +02:00
170ed98701
Remove dependency of boost/glib to the pool benchmark
Patrick Pelissier
2018-03-29 20:51:42 +02:00
54fa2c8635
Don't assume boost is always installed on the platform.
Patrick Pelissier
2018-03-29 20:12:53 +02:00
bc83fe43e5
Remove dependency on GMP, so that it is easier to run the bench suite.
Patrick Pelissier
2018-03-29 20:01:45 +02:00
18710567f2
Make QT & GLIB optional libraries
Patrick Pelissier
2018-03-29 19:19:48 +02:00
9a98ed5cb6
Add PHONY target.
Patrick Pelissier
2018-03-29 19:15:11 +02:00
35a98fd3b5
Remove unused header file
Patrick Pelissier
2018-03-29 19:13:59 +02:00
cd74fdf234
time command doesn't work reliabely in Makefile
Patrick Pelissier
2018-03-29 19:13:35 +02:00
6cccbfc73a
Add worker_sync_p function.
Patrick Pelissier
2018-03-26 22:13:50 +02:00
e59308a9a3
Update documentation.
Patrick Pelissier
2018-03-26 21:55:51 +02:00
85a3be4ae3
Update documentation
Patrick Pelissier
2018-03-26 21:45:06 +02:00
d873693fe7
Update to ignore 'other' directory
Patrick Pelissier
2018-03-24 12:47:19 +01:00
2df967d5c2
add TODO
Patrick Pelissier
2018-03-24 08:52:20 +01:00
20989a7ab5
Add test for bounded string.
Patrick Pelissier
2018-03-24 08:42:47 +01:00
8e114d6fe4
Add bounded string definition so that you can easily use them for a container.
Patrick Pelissier
2018-03-24 08:42:15 +01:00
479ad2d4ba
Update doc
Patrick Pelissier
2018-03-23 22:07:04 +01:00