Patrick Pelissier
de3cbe45b4
Make INIT method optional.
2018-09-08 09:47:36 +02:00
Patrick Pelissier
ce948bd9ce
Make INIT optional for TUPLE.
2018-09-08 09:02:54 +02:00
Patrick Pelissier
2174c28aa2
Make INIT operator optionnal for ARRAY & LIST.
2018-09-08 08:21:13 +02:00
Patrick Pelissier
79d0452427
Instead of fixed string, enable using printf like formatting for initialization of a string.
2018-09-02 11:05:27 +02:00
Patrick Pelissier
ad5c141a7c
Enable support to initialize a string_t with a const char[] within M_LET.
2018-09-02 11:00:14 +02:00
Patrick Pelissier
822c27399c
Add M_INIT_VAI to initialize a container with a VA.
...
(pretty much like it was done for ALGO).
Use if for array & list so that you can init them in M_LET
by giving it a VA.
2018-09-01 21:12:02 +02:00
Patrick Pelissier
2197c4ce81
Add more cases to test.
2018-09-01 09:50:28 +02:00
Patrick Pelissier
b894d64063
Add support for INIT_WITH in M_LET in C99 mode.
2018-09-01 09:47:32 +02:00
Patrick Pelissier
dbcade3087
Add support for given an argument for the initialization of a variable in M_LET
...
if the variable is within parenthesis:
M_LET((a,b), string_t)
==> It will init a & set it to b.
For the moment, we can only init with value of the same type (through init_set)
2018-08-31 00:02:03 +02:00
Patrick Pelissier
8c0b6f1e9d
Fix spellings.
2018-08-25 21:35:37 +02:00
Patrick Pelissier
71db5f9a79
Support for break to break the execution of M_LET
2018-08-25 00:11:20 +02:00
Patrick Pelissier
e1147fb33d
Add support for IN_STR for default C types.
2018-08-23 19:58:02 +02:00
Patrick Pelissier
af5742ce2d
Change the value used to generate the enumerate of a variant:
...
the previous values didn't prevent to have a name collision
with other methods defined for the variant.
2018-08-21 22:53:07 +02:00
Patrick Pelissier
2ab2b9efd6
Add primitive to parse standard C types (except const char*)
2018-08-21 19:53:55 +02:00
Patrick Pelissier
dbb34b75fd
Add method for the operator OUT_STR for the default type.
2018-08-21 19:26:18 +02:00
Patrick Pelissier
492e4c33db
Adding more assertions to check the good call of the test object.
2018-08-20 23:11:13 +02:00
Patrick Pelissier
4ba0156ad8
Backport solution from tuple to variant.
2018-08-19 08:45:10 +02:00
Patrick Pelissier
6ef9936e24
Fix issue of recusrive definition of TUPLE using GLOBAL oplist:
...
There was a recursive call of M_REDUCE2 that fails to expand properly on its second invocation
Rewrite fully how global oplists are implemented:
it performs a first pass to expand the oplists, and the a separate pass to define the functions.
This enables to separate the pass, and use M_REDUCE2 in both.
2018-08-19 08:28:17 +02:00
Patrick Pelissier
e835dbc7c6
Update Makefile for also testing clang++
2018-08-19 08:27:51 +02:00
Patrick Pelissier
acbf1efad6
Fix issue: CLEAN method was not properly exported by tuple.
2018-08-14 07:58:37 +02:00
Patrick Pelissier
822f9aacf6
Add CLEAN method for tuple.
2018-08-13 20:05:32 +02:00
Patrick Pelissier
ede57a20be
Add ALGO ALGO_INSERT that allows inserting a container into another one.
2018-08-08 22:44:17 +02:00
Patrick Pelissier
1bb144e256
VARIANT: Oplist is now optional for their definition.
2018-08-07 23:18:37 +02:00
Patrick Pelissier
7d83603646
TUPLE: Oplist is now optional for tuple definition.
2018-08-06 23:20:02 +02:00
Patrick Pelissier
4ef1b079cb
Can omit optlist in B+TREE definition
2018-08-05 11:08:18 +02:00
Patrick Pelissier
34d56c54c8
Test strim with an empty string.
...
(Shall do nothing).
2018-08-03 20:22:32 +02:00
Patrick Pelissier
68c737dcef
Clean up interface if (internal) genint:
...
it returns at most an 2048, so an unsigned int is more enought
(and internally it was already used!).
So transform the interface to take as input unsigned int.
Fix maximum size supported by the genint package.
Add proper constant used for error, and use it in the code.
2018-08-02 23:19:05 +02:00
Patrick Pelissier
166d408f5e
Add support for out_str for the default C types if C11 is enabled.
2018-08-01 20:12:24 +02:00
Patrick Pelissier
9c31f8aa92
Complete test to show failure of _init_move for deque.
2018-07-31 23:11:26 +02:00
Patrick Pelissier
f1a52439bb
Add more tests.
2018-07-30 22:42:33 +02:00
Patrick Pelissier
7b5ae3c15b
Update API so that the worker_t parameter is given on creating the sync bloc.
...
(API breakage), more RAII like.
2018-07-28 19:09:07 +02:00
Patrick Pelissier
dbe8817d95
Add bitset_clz
2018-07-27 06:19:54 +02:00
Patrick Pelissier
79158dabbc
Rename _map into _for_each.
2018-07-22 21:32:46 +02:00
Patrick Pelissier
6bdd47a557
Don't remove depend with a make clean
...
otherwise you'll get a regeneration of the dependency file for each clean command
which is useless.
make distclean shall be used to remove the dependency file.
2018-07-18 22:28:19 +02:00
Patrick Pelissier
be26176828
Add one more test case.
2018-07-18 21:41:14 +02:00
Patrick Pelissier
1657d7af7d
Support of LOG_COMPILER for cross-compilation test.
2018-07-18 00:28:35 +02:00
Patrick Pelissier
6721a86768
Add method _mismatch and _mismatch_if
2018-07-15 22:34:29 +02:00
Patrick Pelissier
5025b3690d
Add test.
2018-07-15 22:26:59 +02:00
Patrick Pelissier
42b37a718f
Add test.
2018-07-15 22:26:21 +02:00
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