Patrick Pelissier
453a920af8
Add methods to scan in post-order a sub-tree
2022-06-04 14:54:51 +02:00
Patrick Pelissier
1fd86ffc2e
Update & fix
2022-06-03 22:59:55 +02:00
Patrick Pelissier
96a0639a8a
Add more functions for TREE
2022-06-03 21:43:33 +02:00
Patrick Pelissier
c12d0a3f23
Update comments
2022-06-03 21:43:15 +02:00
Patrick Pelissier
cac8790405
Start working on example with generic tree
2022-06-01 19:52:28 +02:00
Patrick Pelissier
ccd9726e01
Fix some warnings / errors
2022-06-01 19:51:50 +02:00
Patrick Pelissier
5516b50b3a
Add WIP / untested generic tree datastructure
2022-05-31 23:00:19 +02:00
Patrick Pelissier
b5a3e010d8
Add {} for if
2022-05-26 22:13:24 +02:00
Patrick Pelissier
2d7d267252
Update doc
2022-05-26 18:33:43 +02:00
Patrick Pelissier
bd5d7aaada
Fix wrong prototype in docs
2022-05-24 23:58:20 +02:00
Patrick Pelissier
18b6be8e00
Update doc
2022-05-24 23:56:34 +02:00
Patrick Pelissier
958abfef93
Make INIT_SET operator optional
2022-05-24 23:30:14 +02:00
Patrick Pelissier
198be1062b
Update doc
2022-05-24 23:25:37 +02:00
Patrick Pelissier
0cfee02641
Make INIT operator optional
2022-05-24 23:22:36 +02:00
Patrick Pelissier
48dc38508a
Factorize the documentation by using the generic interface (WIP)
2022-05-23 23:49:57 +02:00
Patrick Pelissier
e763204bf7
Fix example
2022-05-22 22:54:25 +02:00
Patrick Pelissier
370baf56ab
Factorize the documentation by using the generic interface (WIP)
2022-05-22 00:22:36 +02:00
Patrick Pelissier
4fd6bcbf99
Factorize the documentation by using the generic interface (WIP)
2022-05-19 22:41:19 +02:00
Patrick Pelissier
59d1e23dea
Factorize the documentation by using the generic interface (WIP)
2022-05-19 22:28:53 +02:00
Patrick Pelissier
cb173f2f81
Update doc
2022-05-19 21:45:16 +02:00
Patrick Pelissier
d047174c2f
Update doc
2022-05-19 21:43:42 +02:00
Patrick Pelissier
df25159d03
Add generic interface chapter & start factorizing duplicate specification
2022-05-19 00:30:47 +02:00
Patrick Pelissier
99618a687e
Update doc
2022-05-19 00:00:36 +02:00
Patrick Pelissier
a1b226e185
Update doc
2022-05-16 23:37:04 +02:00
Patrick Pelissier
e93df4332a
Fix issue for 16 bits architecture
2022-05-14 09:16:41 +02:00
Patrick Pelissier
5a1f768b03
Update comment about lock-free property
2022-05-14 09:16:41 +02:00
Patrick Pelissier
e854bc8fc9
Remove warning in C++ mode for using C++ class
2022-05-12 00:00:10 +02:00
Patrick Pelissier
9ab958708d
Update doc:
...
clarify operators
2022-05-11 23:26:36 +02:00
Patrick Pelissier
85ea92d83b
Review of m-core.h
...
* Add control of MSVC preprocessor
* Add comments
* Remove useless evaluation pass
* Rewrite some evaluation pass to be faster.
2022-05-11 21:38:47 +02:00
Patrick Pelissier
22a406ac51
Add new test case (M_MAP + M_SEQ)
2022-05-11 21:38:47 +02:00
Patrick Pelissier
58eed79413
Register the oplist associated to unsigned
2022-05-04 22:25:15 +02:00
Patrick Pelissier
e83dea8212
Fix warnings for Visual C++
2022-05-10 23:49:20 +02:00
Patrick Pelissier
c829827f48
Fix warnings for Visual C++
2022-05-10 23:34:48 +02:00
Patrick Pelissier
b47cf05a59
Update doc
2022-05-10 23:14:47 +02:00
Patrick Pelissier
22a93514ff
Add EMPLACE test for priority queue
2022-05-10 23:10:58 +02:00
Patrick Pelissier
154865f0f1
Add EMPLACE support for priority queue
2022-05-10 23:10:44 +02:00
Patrick Pelissier
71151770fd
Fix wrong type
2022-05-09 22:55:57 +02:00
Patrick Pelissier
72623ce13e
Adding test cases for I/O methods
2022-05-09 22:52:28 +02:00
Patrick Pelissier
94f20d56e9
Adding OUT_STR / IN_STR / PARSE_STR / GET_STR / IN_SERIAL / OUT_SERIAL methods
2022-05-09 22:51:46 +02:00
Patrick Pelissier
9e8ad9bfd9
Fix format
2022-05-09 22:48:56 +02:00
Patrick Pelissier
e51a5be776
Add check of prioqueue against STL C++
2022-05-09 22:25:09 +02:00
Patrick Pelissier
7d647340c6
Update
2022-05-09 22:24:48 +02:00
Patrick Pelissier
c6ea3c0616
Fix spelling
2022-05-09 20:16:33 +02:00
Patrick Pelissier
9ab90be6d4
Add check of B+Tree / Set
2022-05-09 20:12:55 +02:00
Patrick Pelissier
10440320d1
Remove IT_REF from exported oplist as the items shall appear as not modifiable by algorithms
2022-05-09 20:12:39 +02:00
Patrick Pelissier
fc7e93403a
Update copyright year
2022-05-09 20:06:05 +02:00
Patrick Pelissier
b0c4418584
Fix M_ALGO_EXTRACT: the source oplist wasn't transformed into a global one.
2022-05-09 20:03:26 +02:00
Patrick Pelissier
5f73eb7788
Add test for support C++ class in M*LIB
2022-05-06 23:08:27 +02:00
Patrick Pelissier
a554312573
Update doc
2022-05-06 23:07:10 +02:00
Patrick Pelissier
8a1fd391d1
Fix reverse issue
2022-05-06 01:27:34 +02:00
Patrick Pelissier
95b104ee48
Issue in generation of functions:
...
if the method in the oplist uses API_* transformation,
if this method is a macro itself,
it may delay the expansion too much and
the macro may not be expanded at all in the final code generation.
Fix issue by adding a supplementary evaluation in the macro expansion.
Add test cases
2022-05-06 01:10:31 +02:00
Patrick Pelissier
c3df69d011
Add tests for generic API + macros
2022-05-04 22:16:01 +02:00
Patrick Pelissier
73468a3e24
Update doc
2022-05-02 23:15:58 +02:00
Patrick Pelissier
f254f98e42
Update doc
2022-05-02 21:40:49 +02:00
Patrick Pelissier
d37076dd37
Update comments
2022-05-02 21:11:12 +02:00
Patrick Pelissier
5ef9376148
Improve example (adding ADD/SUB/MUL/DIV operators
2022-04-29 19:55:29 +02:00
Patrick Pelissier
d8abda7583
Fix issue (implicit const cast)
2022-04-29 19:55:02 +02:00
Patrick Pelissier
892c755389
Improve example to show emplace support
2022-04-28 23:10:57 +02:00
Patrick Pelissier
aba2f90c9d
Add test for emplace generation for variant
2022-04-28 23:10:40 +02:00
Patrick Pelissier
dc487c7e64
Add support for EMPLACE_TYPE for variant
2022-04-28 23:10:27 +02:00
Patrick Pelissier
18b1bd9518
Fix makefile if MPFR not found
2022-04-28 23:06:41 +02:00
Patrick Pelissier
845ab1fef0
Update comment
2022-04-28 23:03:04 +02:00
Patrick Pelissier
94bfac3f75
Improve example by adding also mpfr
2022-04-28 22:22:05 +02:00
Patrick Pelissier
bd5c9ce2a7
Add MPFR detection
2022-04-28 22:10:36 +02:00
Patrick Pelissier
f5934a6274
Add emplace type example
2022-04-27 21:57:28 +02:00
Patrick Pelissier
c6f71fddc7
Add test for stable_sort
2022-04-26 21:35:51 +02:00
Patrick Pelissier
74764e2d6f
Fix issues in stable_sort: wrong assertion & missing init_move
2022-04-26 21:35:51 +02:00
Patrick Pelissier
9b00a8c54e
Update documentation
2022-04-25 22:10:19 +02:00
Patrick Pelissier
66735e99c3
Add check sanitize to Continuous Integration
2022-04-23 10:40:39 +02:00
Patrick Pelissier
80acbb4343
Ensure proper order of commands in case of parallelism
2022-04-23 10:37:42 +02:00
Patrick Pelissier
2fb912d43d
Should remove warning with Visual C++
2022-04-23 10:34:54 +02:00
Patrick Pelissier
8c8dc6de7c
Add new example
2022-04-23 10:21:46 +02:00
Patrick Pelissier
677acdd14e
Use of new M_INIT_EMPLACE_VAI macro
2022-04-23 10:21:33 +02:00
Patrick Pelissier
6caeea98b9
Add M_INIT_EMPLACE_VAI macro for INIT_WITH containers with emplace support
2022-04-23 10:21:17 +02:00
Patrick Pelissier
c5d37ce028
Update comments
2022-04-23 10:03:51 +02:00
Patrick Pelissier
112b405df6
Reformat
2022-04-23 10:01:39 +02:00
Patrick Pelissier
47385d58e5
Update documentation with new generated functions
2022-04-23 09:20:11 +02:00
Patrick Pelissier
c8275c8f63
Add test cases for generated emplace functions
2022-04-23 09:19:58 +02:00
Patrick Pelissier
0c1e888a78
Add emplace generation for RB Tree
2022-04-23 09:19:42 +02:00
Patrick Pelissier
6a1ff3e080
Add emplace generation for oplist with CMP operator
2022-04-23 09:18:20 +02:00
Patrick Pelissier
6d41eba5ed
Update documentation for emplace functions
2022-04-22 22:51:45 +02:00
Patrick Pelissier
c0abcc6d60
Add tests for new emplace functions
2022-04-22 22:51:36 +02:00
Patrick Pelissier
da71c81195
Add emplace functions for list / deque
2022-04-22 22:51:17 +02:00
Patrick Pelissier
8e0d17e85c
Add test for emplace string_t from const char *
2022-04-21 23:11:24 +02:00
Patrick Pelissier
6d98c273c1
Add EMPLACE_TYPE from const char *
2022-04-21 23:11:11 +02:00
Patrick Pelissier
85f6ff34aa
Add test cases for generated emplace functions
2022-04-20 22:43:12 +02:00
Patrick Pelissier
759c24be63
Add request for generation for emplace functions
2022-04-20 22:43:12 +02:00
Patrick Pelissier
d85955ef60
Add generation of emplace functions
2022-04-20 22:43:12 +02:00
Patrick Pelissier
3a53044198
Add M_EMPLACE macros to enables generic generation of EMPLACE functions
2022-04-20 22:43:12 +02:00
Patrick Pelissier
4d5cd9c635
Code generation shows no difference between && or & for simple & typical OOR values
...
So let's use the logical comparaison which is clearer.
2022-04-19 22:07:01 +02:00
Patrick Pelissier
57b88160ae
Add asm generation for typical OOR_EQUAL_P functions
2022-04-19 20:57:03 +02:00
Patrick Pelissier
33ba602aef
Reformat
2022-04-18 22:10:32 +02:00
Patrick Pelissier
3632388315
Reorder macros to group then by logical entity. Remove M_INVERT obsolete macro
2022-04-18 21:22:45 +02:00
Patrick Pelissier
6ee82e885b
Update comments
2022-04-18 11:09:12 +02:00
Patrick Pelissier
2f92cee416
Update code for generated asm analysis
2022-04-18 11:08:59 +02:00
Patrick Pelissier
9269473e10
Remove M_APPLY_SIZEOF
2022-04-18 10:04:11 +02:00
Patrick Pelissier
c8611ce708
Update comments
2022-04-18 09:44:13 +02:00
Patrick Pelissier
d8fd43e9e9
Update comments & avoid using M_ID for internal macros
2022-04-18 09:41:43 +02:00
Patrick Pelissier
a2e471620d
Add support for '_' meta keyword
2022-04-18 09:24:32 +02:00
Patrick Pelissier
ffa3821acf
Add tests for M_KEYWORD_TO_VA_ARGS
2022-04-17 19:01:32 +02:00