Patrick Pelissier
6b064870f5
Rename CLEAN operator in RESET operator
2021-10-30 23:26:27 +02:00
Patrick Pelissier
836d892832
Rename BUFFER, I-LIST, PRIOQUEUE & SHARED _clean in _reset to avoid confusing _clean & _clear functions. See #97
2021-10-28 18:08:07 +02:00
Patrick Pelissier
a950e15625
Adding method for NAME operator for basic containers
2021-06-12 11:11:30 +02:00
Patrick Pelissier
517da1b999
Rename generated internal functions
...
to avoid "poluting" userspace naming.
2021-02-13 11:45:05 +01:00
Patrick Pelissier
25497bd96f
Factorize code so that _DEF macros use _DEF_AS ones
2021-02-07 23:04:59 +01:00
Patrick Pelissier
25fe26deaa
Happy new year
2021-01-13 20:18:01 +01:00
Patrick Pelissier
2ee82c478b
Remove useless type (see #82 )
2020-12-24 10:58:51 +01:00
Patrick Pelissier
a29682ca29
Create M_ASSERT macro to encapsulate assert within M*LIB
...
The goal is to enable the user to override this macro if needed so that it can enable or disable the M*LIB witout impacting its own assertions.
2020-10-29 22:46:17 +01:00
Patrick Pelissier
54d4b80368
Reformat macro to 80 characters
2020-10-21 23:23:40 +02:00
Patrick Pelissier
a4cb6e3681
Add macros SHARED_PTR_DEF_AS, SHARED_PTR_RELAXED_DEF_AS, SHARED_RESOURCE_DEF_AS
2020-10-03 14:07:14 +02:00
Patrick Pelissier
1dd9aff402
Factorize the name of the object at top level.
2020-10-03 14:07:14 +02:00
Patrick Pelissier
b3a1a75f6f
Rename internal types:
...
a suffix ending with _ct means confidential type
ans is reserved for M*LIB internal usage.
OPLIST doesn't use the external types
but rather the internal types.
It enables to be independent of the real names
of the external types.
Such external names are planned to be fully customizable
(i.e. the user may define a name that suits its coding style)
2020-10-03 14:07:14 +02:00
Patrick Pelissier
1b206931df
Transform TAB into SPACE
2020-07-22 20:51:45 +02:00
Patrick Pelissier
8a36b5ff15
Workaround to avoid CLANG unused function warnings
2020-07-09 22:14:00 +02:00
Patrick Pelissier
f2a06ede62
Add mechanism to disable temporary compiler warnings in a sequence of code.
2020-07-01 11:47:55 +02:00
Patrick Pelissier
06a1590645
Add missing assertion.
2020-06-21 23:51:49 +02:00
Patrick Pelissier
652653af0b
Fix some warnings by casting
...
for compilers which cannot detect the affectations as ok.
2020-06-21 23:50:49 +02:00
Patrick Pelissier
78d0bfb286
Port new error oplist format to all containers.
2020-05-30 18:00:43 +02:00
Patrick Pelissier
d884d257bb
Export TYPE operator in oplist
2020-05-17 10:53:17 +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
49a2e600c4
Add control of sub-oplist when creating a new oplist of a container
...
Add test case of this new control
Fix some corner bugs in some containers evolving their own oplists.
2020-05-15 21:19:39 +02:00
Patrick Pelissier
45d2a529b5
Add more validation of oplists before expanding data
2020-05-10 11:16:46 +02:00
Patrick Pelissier
4f7b0b9455
Happy new year 2020
2020-01-04 15:41:06 +01:00
Patrick Pelissier
60a10eb799
Uniformize the macro names
2019-06-09 12:02:38 +02:00
Patrick Pelissier
475836e851
Use of new macro M_CACHELINE_ALIGN
2019-01-15 19:11:10 +01:00
Patrick Pelissier
8b3a4a802c
Happy new year!
2019-01-02 18:12:07 +01: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
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
6325f01122
Port to M_CALL M-SHARED
2018-09-10 21:39:38 +02:00
Patrick Pelissier
3b0e940284
Add missing _ptr & _srcptr alias.
2018-08-19 17:58:23 +02:00
Patrick Pelissier
48a970ceb9
Avoid using '__' within words.
...
It seems to be a reserved naming of C++.
2018-08-19 11:31:09 +02:00
Patrick Pelissier
143a5fdf4f
Fix 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:20:57 +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
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
f2b2335080
Fix issue with C++ not supporting passing an int constant value to an unsigned atomic type...
...
I definitely find this disturbing.
2018-03-16 22:59:51 +01:00
Patrick Pelissier
e540a95ad0
Fix spelling
2018-02-24 15:28:07 +01:00
Patrick Pelissier
d258fb3eff
Fix memory leak
2018-02-23 23:13:10 +01:00
Patrick Pelissier
acb1aa8104
Add new restriction
2018-02-20 22:12:03 +01:00
Patrick Pelissier
2dc71cc5fd
Fix bug
2018-02-20 22:01:19 +01:00
Patrick Pelissier
4a92419bbe
Add tests
2018-02-20 21:55:16 +01:00
Patrick Pelissier
92699501f6
Add more assertions
2018-02-19 23:41:29 +01:00
Patrick Pelissier
b49ed97be0
Update comment
2018-02-19 23:38:22 +01:00
Patrick Pelissier
aec661edea
Add shared ressource container
2018-02-19 23:37:10 +01:00
Patrick Pelissier
a9aa1e13ee
Add relaxed shared pointer (thread unsafe with non-atomic counter).
2018-02-10 17:31:12 +01:00
Patrick Pelissier
f5857c8aab
Create an oplist for the counter and use it.
...
It will allow to use other oplist.
2018-02-10 17:22:51 +01:00
Patrick Pelissier
210e05f7fc
Update copyright to 2018
2018-01-29 20:28:30 +01:00
Patrick Pelissier
2e564088b0
Simplify the inclusion of headers.
2017-09-16 10:14:45 +02:00
Patrick Pelissier
1930bdeac1
_DEF macros checks if a global oplist is register if there is no one
...
given in the macro call. If it founds one, it will be it instead
of M_DEFAULT_OPLIST.
2017-09-16 08:31:22 +02:00
Patrick Pelissier
d08e2bba95
Add I/O for deque
2017-09-06 21:05:57 +02:00
Patrick Pelissier
5c5fbd9bf0
Remove warnings for some compilers.
2017-08-05 19:26:50 +02:00