Commit Graph
100 Commits
Author SHA1 Message Date
Patrick Pelissier 7a067a4b90 Add M_PTR_OPLIST 2018-10-27 11:13:09 +02:00
Patrick Pelissier 13f3dab23a Update with more examples. 2018-10-27 11:12:55 +02:00
Patrick Pelissier fd9d308b28 Allow tuple initilization in M_LET 2018-10-27 09:28:17 +02:00
Patrick Pelissier 1047d842d0 Add OPLIST for buffer & an example. Still a WIP for the constness of the BUFFER source. 2018-10-26 23:30:04 +02:00
Patrick Pelissier 77385e53f7 Add _init1 for buffer (internal use) 2018-10-26 22:23:44 +02:00
Patrick Pelissier f7b3de2750 Add test cases for _init_set & _set for buffers 2018-10-26 22:05:14 +02:00
Patrick Pelissier a65e6de66b Add more cases. 2018-10-26 21:44:25 +02:00
Patrick Pelissier 41cf523dfc Adding _set & _init_set for buffer (to test) 2018-10-26 21:21:29 +02:00
Patrick Pelissier 3774f8fd11 Fix M_POD_OPLIST in C11 mode 2018-10-26 20:18:32 +02:00
Patrick Pelissier b9e26b1c2c Add test with musl-gcc to test C11 library thread.h 2018-10-26 20:09:32 +02:00
Patrick Pelissier 609175713b Fix C11 backend. 2018-10-26 19:40:51 +02:00
Patrick Pelissier d56b794177 Fix bug in _get method of deque container. 2018-10-21 22:41:29 +02:00
Patrick Pelissier 608a929fcb Added another test case for _get method for DEQUE container. 2018-10-21 22:40:56 +02:00
Patrick Pelissier 4bf045e3d6 Make INIT conditional for DEQUE containers. 2018-10-21 22:31:22 +02:00
Patrick Pelissier 6b5434d64f Fix regression:
even if there is no INIT method for the base type,
the container still defines a INIT method.
2018-10-21 22:27:52 +02:00
Patrick Pelissier abb5480890 Port DEQUE to CALL infrastructure. 2018-10-20 19:02:48 +02:00
Patrick Pelissier 95069b0d4c Update doc 2018-10-20 16:59:56 +02:00
Patrick Pelissier 8f15b50b5f Update documentation of arrays. 2018-10-20 16:57:55 +02:00
Patrick Pelissier c7a1505f9b Update doc 2018-10-10 21:54:34 +02:00
Patrick Pelissier ff098c91f4 Add _capacity for deque 2018-10-07 09:05:09 +02:00
Patrick Pelissier fb40a4f904 Update state 2018-10-03 22:03:08 +02:00
Patrick Pelissier c87696f5c1 Add _hash, _equal_p, _out_str, _in_str, _get_str, _parse_str
for intrusive list.
2018-10-03 22:01:40 +02:00
Patrick Pelissier 4f3dad4bea Add _reverse for I-LIST 2018-10-01 21:22:19 +02:00
Patrick Pelissier 46c2e33096 Remove WIP 2018-09-29 10:23:31 +02:00
Patrick Pelissier 66ee266b90 Move depend.png in doc folder. 2018-09-29 10:22:03 +02:00
Patrick Pelissier 14883b1e26 Update image 2018-09-29 10:10:30 +02:00
Patrick Pelissier 33f74988b1 Update doc 2018-09-29 10:09:18 +02:00
Patrick Pelissier 78b157ff7f Update documentation. 2018-09-29 10:05:40 +02:00
Patrick Pelissier 546b756932 Port TUPLE & VARIANT to API transformation infrastructure. 2018-09-25 21:38:31 +02:00
Patrick Pelissier 5b74d54c64 Remove unused macro. 2018-09-25 20:10:44 +02:00
Patrick Pelissier fc608b21ee Update comment 2018-09-25 20:02:58 +02:00
Patrick Pelissier 2b6a266b93 Optimize _pop_back for dual push list. 2018-09-22 11:58:22 +02:00
Patrick Pelissier 7cb5092010 Update document on dual_push list 2018-09-22 11:58:05 +02:00
Patrick Pelissier a1c3681002 Optimization of _init_set for list. 2018-09-22 11:37:23 +02:00
Patrick Pelissier 91f35aa3bb Update documentation of LIST. 2018-09-22 11:36:38 +02:00
Patrick Pelissier 49a6715dfe Merge branch 'master' of https://github.com/P-p-H-d/mlib 2018-09-19 22:22:57 +02:00
Patrick Pelissier b799725bef Update comment. 2018-09-19 22:22:48 +02:00
Patrick Pelissier 1ada22462f Update comment. 2018-09-19 22:20:11 +02:00
Patrick Pelissier b0ec9680a1 Merge branch 'master' of https://github.com/P-p-H-d/mlib 2018-09-19 07:58:38 +02:00
Patrick Pelissier 7a8a6b1bb1 Rewrite in order to be easier to read. 2018-09-19 07:57:59 +02:00
Patrick Pelissier 1380a91bf1 Update comments. 2018-09-17 22:20:39 +02:00
Patrick Pelissier 83208f74ec Add one more test. 2018-09-17 22:20:26 +02:00
Patrick Pelissier 5f571418d0 Clarify documentation 2018-09-16 00:01:41 +02:00
Patrick Pelissier a7d8ff208f Fix. 2018-09-15 19:42:54 +02:00
Patrick Pelissier 1046f3e220 Add more structure in example. 2018-09-15 19:38:18 +02:00
Patrick Pelissier 6406f97f56 Clarify documentation about oplist usage. 2018-09-15 18:28:43 +02:00
Patrick Pelissier e0c456490a Fix definition of oplist for containers:
if no argument is given, it shall behave as if it was defined with
a standard C type.
2018-09-15 17:59:50 +02:00
Patrick Pelissier 6a1b2a3964 Add new example. 2018-09-15 15:46:22 +02:00
Patrick Pelissier 3452b72add Fix regression of M*LIB:
oplist of tuple/variant wasn't able to detect the default INIT creation
as no valid OPLIST was passed in the absence of OPLIST.
Give the explicit default OPLIST in this case.
2018-09-15 15:30:03 +02:00
Patrick Pelissier 2e3b312fab Fix issue of recursive usage of M_GLOBAL_OPLIST_OR_DEF
Update the way to use the macro to avoid being limited by the
preprocessor limitation.
2018-09-14 20:57:55 +02: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 38b098b547 Port to M_CALL for M-STRING 2018-09-10 21:59:29 +02:00
Patrick Pelissier 60478e3f61 Port to M_CALL for M-SNAPSHOT 2018-09-10 21:55:18 +02:00
Patrick Pelissier 6325f01122 Port to M_CALL M-SHARED 2018-09-10 21:39:38 +02:00
Patrick Pelissier 74c12e6ea2 Port to M_CALL for R/B TREE. 2018-09-10 21:34:18 +02:00
Patrick Pelissier fd3453bb2a Port to M_CALL infrastructure M-I-SHARED 2018-09-10 07:55:47 +02:00
Patrick Pelissier 2ff7631c9c Port to M_CALL infrastructure. 2018-09-10 07:53:07 +02:00
Patrick Pelissier 7a6b0ab641 Port dict to new M_CALL infrastructure to support API transformation. 2018-09-09 14:04:49 +02:00
Patrick Pelissier 8fd0003548 Update 2018-09-08 22:51:46 +02:00
Patrick Pelissier bb8de993b6 Start porting to M_CALL infrastructure, enabling support for
API transformation.
2018-09-08 22:49:12 +02:00
Patrick Pelissier 7c83d733cd Fix grammar 2018-09-08 20:34:12 +02:00
Patrick Pelissier 6f49a1905c Minor fix 2018-09-08 20:32:49 +02:00
Patrick Pelissier d0378aadeb Update doc 2018-09-08 20:25:38 +02:00
Patrick Pelissier 4834318742 Update doc about missing parse_str methods. 2018-09-08 09:56:25 +02:00
Patrick Pelissier 1838a490ba Update doc 2018-09-08 09:47:47 +02:00
Patrick Pelissier de3cbe45b4 Make INIT method optional. 2018-09-08 09:47:36 +02:00
Patrick Pelissier a34cb6c89d Simplification 2018-09-08 09:34:01 +02:00
Patrick Pelissier 9c0724ddb9 Simplification. 2018-09-08 09:10:37 +02:00
Patrick Pelissier ce948bd9ce Make INIT optional for TUPLE. 2018-09-08 09:02:54 +02:00
Patrick Pelissier 5eb5d2420e Make INIT method optional for oplists. 2018-09-08 08:57:02 +02:00
Patrick Pelissier 7510e36f6b Update doc 2018-09-08 08:56:53 +02:00
Patrick Pelissier 8bfdf2bd5f Add M_IF_METHOD2_BOTH 2018-09-08 08:48:09 +02:00
Patrick Pelissier 2174c28aa2 Make INIT operator optionnal for ARRAY & LIST. 2018-09-08 08:21:13 +02:00
Patrick Pelissier 7a55667a5d Remove lib (link broken) 2018-09-04 22:15:44 +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 d4cd327ea3 Add API transform call for all operators. 2018-09-02 10:40:09 +02:00
Patrick Pelissier 27b29d5ffe Clean up & fix DICT_SET_OPLIST 2018-09-01 21:40:17 +02:00
Patrick Pelissier b52222cad9 Add operator INIT_WITH for oplist with PUSH. 2018-09-01 21:22:18 +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 0e717389c1 Add API transform support for the method in an oplist. 2018-09-01 20:42:51 +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 d95a11365a * New method INIT_WITH
* Prepare variable number of arguments for M_LET with INIT_WITH
2018-09-01 09:39:09 +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 7ac54c0eb8 Update doc 2018-08-29 22:17:52 +02:00
Patrick Pelissier 91c74b863d Update comments 2018-08-26 09:26:44 +02:00
Patrick Pelissier 8c0b6f1e9d Fix spellings. 2018-08-25 21:35:37 +02:00
Patrick Pelissier 539f388e66 Update doc (fix spelling). 2018-08-25 09:00:19 +02:00
Patrick Pelissier b03c312b4e Update doc 2018-08-25 08:32:51 +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 e33e77595f Simplify the logic for parsing bool. 2018-08-24 21:03:25 +02:00
Patrick Pelissier d4016b310d Add support for conditionnal support for stdio.h
(needed for special environnement where no stdio is supported).
2018-08-24 20:59:54 +02:00
Patrick Pelissier a41177a110 Add support for bool in default type support.
Needs to rewritefully how to dispatch the default type for IN_STR method
Add also proper non-support for const char* & char * for IN_STR & PARSE_STR
(We cannot do it reliabelty, so the function says it always fail).
2018-08-24 20:45:26 +02:00
Patrick Pelissier f8600296f0 Add missing const for dict's equal_p 2018-08-24 19:18:29 +02:00
Patrick Pelissier e1147fb33d Add support for IN_STR for default C types. 2018-08-23 19:58:02 +02:00
Patrick Pelissier ec0d020669 Fix documentation about right prototype of in_str. 2018-08-23 19:38:19 +02:00
Patrick Pelissier e8eab86546 Fix issue in warning about discarding const attribute. 2018-08-22 00:21:23 +02:00