Patrick Pelissier
|
8a36b5ff15
|
Workaround to avoid CLANG unused function warnings
|
2020-07-09 22:14:00 +02:00 |
|
Patrick Pelissier
|
75f4f23144
|
Add comments and fix Pn level
|
2020-07-02 21:41:57 +02:00 |
|
Patrick Pelissier
|
37cef298c6
|
Update format
|
2020-05-29 21:49:03 +02:00 |
|
Patrick Pelissier
|
88a4835025
|
Fix issue when defining algorithm with same prefix than container
|
2020-05-17 12:11:04 +02:00 |
|
Patrick Pelissier
|
d1ae26f0fd
|
* Add control than the type and the oplist are compatible
|
2020-05-17 10:27:30 +02:00 |
|
Patrick Pelissier
|
c531f805b0
|
Define _reduce only if SET method is properly set
|
2020-05-15 14:31:47 +02:00 |
|
Patrick Pelissier
|
055e74d350
|
Add more check for valid oplists before expanding further
|
2020-05-09 16:10:56 +02:00 |
|
Patrick Pelissier
|
1200f30695
|
* Add more Function Object support in algorithm
* Fix bug of selection sort
|
2020-05-08 11:35:22 +02:00 |
|
Patrick Pelissier
|
4f44b3f60b
|
Add CMP callback
|
2020-05-07 22:13:36 +02:00 |
|
Patrick Pelissier
|
b196fcc3c0
|
Rename _cmp_cb_t into _eq_cb_t
|
2020-05-07 22:10:53 +02:00 |
|
Patrick Pelissier
|
395f1af19e
|
Implement more function object algorithm
|
2020-05-07 22:09:07 +02:00 |
|
Patrick Pelissier
|
563ffb4275
|
Add first support for function object for certain algos (WIP)
|
2020-05-05 23:34:34 +02:00 |
|
Patrick Pelissier
|
0ac6a53fe9
|
Define callback types
|
2020-05-05 22:57:19 +02:00 |
|
Patrick Pelissier
|
4431e9f9ae
|
Factorization / Split of the definition of the algorithm
|
2020-05-05 22:40:03 +02:00 |
|
Patrick Pelissier
|
a0a32d8c6c
|
ALGO_REDUCE accept dest with different type than the container
|
2020-04-20 23:49:16 +02:00 |
|
Patrick Pelissier
|
5b8750ee2a
|
* Add support for product in ALGO_REDUCE
|
2020-04-10 08:28:16 +02:00 |
|
Patrick Pelissier
|
843ddac3dd
|
Proper prefix internal variables of macros by '_'
|
2020-04-01 23:40:41 +02:00 |
|
Patrick Pelissier
|
4e67823593
|
Add support for SET_KEY only containers for ALGO_EXTRACT
|
2020-04-01 23:27:20 +02:00 |
|
Patrick Pelissier
|
d77a235b2a
|
Add macro ALGO_TRANSFORM
|
2020-03-28 17:41:04 +01:00 |
|
Patrick Pelissier
|
548cd84a7f
|
Add _transform method for algorithm.
|
2020-03-28 13:33:43 +01:00 |
|
Patrick Pelissier
|
068d023917
|
Factorize in m-core.h the pattern recognication.
|
2020-03-28 11:36:51 +01:00 |
|
Patrick Pelissier
|
86b6ad54d5
|
Rename filln, filla, fillan into fill_n, fill_a, fill_an (same name as C++)
|
2020-03-28 11:10:02 +01:00 |
|
Patrick Pelissier
|
c3a5306266
|
Add function _fill, _filln, _filla, _fillan as algorithms
|
2020-03-26 21:48:46 +01:00 |
|
Patrick Pelissier
|
4f7b0b9455
|
Happy new year 2020
|
2020-01-04 15:41:06 +01:00 |
|
Patrick Pelissier
|
a9fc259420
|
ALGO_EXTRACT func argument is now optional
|
2019-12-30 14:31:21 +01:00 |
|
Patrick Pelissier
|
6f603b52df
|
Update comments
|
2019-12-30 14:11:41 +01:00 |
|
Patrick Pelissier
|
edb4ccf63e
|
Add algo functions _remove_val & _remove_if
|
2019-05-07 16:35:39 +02:00 |
|
Patrick Pelissier
|
7eb26a29f1
|
Reduce the number of mandatory operators for algorithm:
* EQUAL
* INIT
are not optional (methods depending on them won't be generated
if the operators are not defined).
|
2019-03-24 08:37:57 +01:00 |
|
Patrick Pelissier
|
dc803f23bb
|
Add missing const
|
2019-03-09 16:38:44 +01:00 |
|
Patrick Pelissier
|
8b3a4a802c
|
Happy new year!
|
2019-01-02 18:12:07 +01:00 |
|
Patrick Pelissier
|
8f67ca339b
|
Rename internal macros.
|
2018-09-13 22:59:38 +02:00 |
|
Patrick Pelissier
|
1679b7b5cf
|
Mark ALGO_INIT_VA & ALGO_LET_INIT_VA as obsolete:
the M_LET macro supports their feature in a more generic way.
|
2018-09-10 22:57:52 +02:00 |
|
Patrick Pelissier
|
757049543d
|
Port to M_CALL infrastructure the M-ALGO
|
2018-09-10 22:50:26 +02:00 |
|
Patrick Pelissier
|
c506443ed0
|
Add comment about ALGO_EXTRACT
|
2018-08-08 22:54:56 +02:00 |
|
Patrick Pelissier
|
5f42f26587
|
Fix warning about shadowed variables
|
2018-08-08 22:49:49 +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
|
92d7009804
|
Fis issue if given type is a T * = TYPE:
token pasting created const T *, which is not the same as
const TYPE = T * const
|
2018-08-03 20:35:37 +02:00 |
|
Patrick Pelissier
|
79158dabbc
|
Rename _map into _for_each.
|
2018-07-22 21:32:46 +02:00 |
|
Patrick Pelissier
|
4aca0664ef
|
Add methods _find_again, _find_again_if, _mismatch_again and _mismatch_again_if
|
2018-07-15 23:06:22 +02:00 |
|
Patrick Pelissier
|
6721a86768
|
Add method _mismatch and _mismatch_if
|
2018-07-15 22:34:29 +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
|
96202aa78f
|
Do not use reserved identifiers of the C standard (See 7.1.3 Reserved identifiers)
|
2018-07-14 14:35:14 +02:00 |
|
Patrick Pelissier
|
e696192ef7
|
Update comments.
Cosmetic change.
|
2018-05-31 23:09:11 +02:00 |
|
Patrick Pelissier
|
38cd8847a2
|
Adding a generic merge sort if container has both _splice_back & _splice_at
methods
|
2018-05-28 23:51:41 +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
|
45263a6261
|
Fix parenthesis
|
2018-05-20 18:07:58 +02:00 |
|
Patrick Pelissier
|
482e1631fa
|
Remove warning in case of some kind of type
(Famous problem of C not allowing to cast
a T (*)[N] into a const T (*)[N].
|
2018-05-19 12:51:31 +02:00 |
|