Commit Graph
199 Commits
Author SHA1 Message Date
Patrick Pelissier d548117538 Make M*LIB stricter for INIT_MOVE operator:
* either the default INIT_MOVE operator works ('=')
* either an INIT_MOVE method is defined
* or it is disabled.
As a consequence, fix usage of testobj_t and mpz_t in the repository

The emulation layer of INIT_MOVE using INIT_SET+CLEAR is removed:
it wasn't working correctly with the local memory context
(INIT_MOVE doesn't need any local memory context to work,
 whereas INIT_SET/CLEAR does)
Remove macro M_DO_INIT_MOVE as it is now useless and uses M_CALL_INIT_MOVE.

The INIT_MOVE default method no longer sets the old 'src' to '0':
it was useless (it doesn't catch any error) and complicates compiler parsing.

Fix POD & A1 & CSTR & classic oplists definition (missing INIT_MOVE operators).
2025-05-07 21:02:24 +02:00
Patrick Pelissier 256ff916a2 Port serial to new memory format 2025-05-07 21:02:24 +02:00
Patrick Pelissier 01f5228a36 Port to new memory model:
Communication thread buffer needs to use the global pool,
and not a local pool, since the allocation is done accross
several threads.
Therefore the non thread fixed queue & stack interfaces are moved into
a dedicated header (m-queue)
and remove support for non thread stack & queue into m-buffer
Remove also deprecated policy too.
2025-05-07 21:02:24 +02:00
Patrick Pelissier 77e5666802 Update string oplist definition with pool 2025-05-07 21:02:24 +02:00
Patrick Pelissier 689527c2dc Port m-shared-ptr to new memory model
(use global pool)
2025-05-07 21:02:24 +02:00
Patrick Pelissier 10d918bbc9 Port to new memory model (add global context 0) 2025-05-07 21:02:24 +02:00
Patrick Pelissier 94dd0a5571 Add example of using pool 2025-05-07 21:02:24 +02:00
Patrick Pelissier 93112a5a7c Update example 2025-05-07 21:02:23 +02:00
Patrick Pelissier b3a0d70147 Fix memory safety errors in examples. 2025-04-08 21:46:16 +02:00
Patrick Pelissier 782963dec5 Add example of disabling small name usage 2025-03-01 12:20:28 +01:00
Patrick Pelissier f21d427de1 Convert example to new shared ptr interface 2024-11-16 18:02:13 +01:00
Patrick Pelissier 0bcd78a8f5 Fix warning. 2024-11-12 22:31:05 +01:00
Patrick Pelissier 847f52fa5e Fix clang warning 2024-07-11 22:07:51 +02:00
Patrick Pelissier 02828a0109 Fix interface of Intrusive List
(Reported by Brian Sipos):
* incorrect clear operator usage
* useless prototype of _insert, inconsistent with the policy of other functions
* syntax error in _insert
2024-07-11 21:41:14 +02:00
Patrick Pelissier 8987288a10 Fix spelling 2024-06-01 11:05:35 +02:00
Patrick Pelissier e7e29d913e Add new example of variant 2024-06-01 10:16:59 +02:00
Patrick Pelissier 4549f4ab91 Improve comments 2024-05-14 21:29:47 +02:00
Patrick Pelissier 11946f155d Update 2024-05-11 09:21:10 +02:00
Patrick Pelissier 99713e873c Add example of multi B+Tree 2024-05-11 09:19:10 +02:00
Patrick Pelissier 738123d4a7 Fix the example 2024-05-01 22:17:59 +02:00
Patrick Pelissier 955c8bfb81 Adding new example of generic 2024-04-04 22:35:08 +02:00
Patrick Pelissier 76ef061dec Add basic example of generic interface 2023-12-30 16:23:02 +01:00
Patrick Pelissier f951a947ec Adding a try catch example 2023-12-30 13:42:47 +01:00
Patrick Pelissier ea640482a7 Add new examples with custom allocation 2023-12-20 19:25:27 +01:00
Patrick Pelissier eabfcd1d49 Update list of ignored files 2023-12-08 00:25:53 +01:00
Patrick Pelissier 0c8eca893d Add example of REST client
by using libcurl for HTTP connection
and M*LIB for JSON formating.
2023-11-25 13:33:27 +01:00
Patrick Pelissier 9dc582c6bc Add emplace set functions for tuple 2023-11-25 13:30:08 +01:00
Patrick Pelissier 703ab6ff9c Update examples 2023-11-04 18:48:13 +01:00
Patrick Pelissier df66db562d Add comments 2023-08-01 00:33:43 +02:00
Patrick Pelissier 91f5f513c4 Update macro names
Make global logic easier.
2023-06-11 23:32:02 +02:00
Patrick Pelissier 3dec4e2cbe Fix example 2023-06-11 23:32:02 +02:00
Patrick Pelissier d7639f0ae0 Update example to match new semantic 2023-06-11 23:32:02 +02:00
Patrick Pelissier a043c379c0 Update user code as per new liberty 2023-06-11 23:32:02 +02:00
Patrick Pelissier 6bb7a184db Fix compil rules 2023-06-11 23:32:02 +02:00
Patrick Pelissier fa9163be9d Make linker options optional 2023-06-11 23:32:02 +02:00
Patrick Pelissier 0bade1563c Also build exn.exe by default 2023-06-11 23:32:02 +02:00
Patrick Pelissier 53af2aae68 Add example of separating inline & function code 2023-06-11 23:32:02 +02:00
Patrick Pelissier 8544a7f289 Update example 2023-05-30 14:01:30 +02:00
Patrick Pelissier b1b0927e9f Update examples 2023-05-06 21:54:08 +02:00
Patrick Pelissier 16a0a5c1a3 Add new examples 2023-03-24 21:11:15 +01:00
Patrick Pelissier 9e2ae3f101 Update example 2023-03-05 18:30:47 +01:00
Patrick Pelissier c1c9cb9cd3 Update example 2023-03-03 20:12:50 +01:00
Patrick Pelissier 12fae5c36c Update example 2023-02-26 23:43:57 +01:00
Patrick Pelissier 3f9129c7ed Update comments 2023-02-26 23:43:57 +01:00
Patrick Pelissier b918f61f4f Update example 2023-02-26 23:43:57 +01:00
Patrick Pelissier 8e2f67b794 Fix building on exe files: some targets don't link with LDFLAGS if it is not in the last argument 2023-02-23 12:42:11 +01:00
Patrick Pelissier 2b99bbe956 Remove bool oplist as it is globally registered 2023-02-22 22:47:31 +01:00
Patrick Pelissier 1838f675a7 Add more comments, another alternative.
Rename some variables to be clearer.
2023-02-18 20:15:17 +01:00
Patrick Pelissier bf6c1341b3 Add comments to explain what we do
Always use the prefixed version of M*LIB
2023-02-18 09:58:30 +01:00
Patrick Pelissier 55b745b916 Use of M_WORKER_SPAWN_DEF2 in example:
it shows how to add paralelization to a code base.
2023-02-18 00:25:30 +01:00