Roland Reichwein
49acd2d2ab
Various cleanup changes ( #1049 )
...
* Various Cleanup
Remove remove() by pointer because erase() can be used for that
Fix signed distance handling, with added check for order
Add missing file ID
Fix File IDs
Added test for algorithm.h
* Improve types
# Conflicts:
# include/etl/file_error_numbers.h
2025-04-30 16:54:22 +01:00
John Wellbelove
aa0d8b322c
Merge branch 'development' of https://github.com/ETLCPP/etl into development
...
# Conflicts:
# zephyr/module.yml
2025-04-30 12:23:56 +01:00
Roland Reichwein
6ed64f7b21
Support const pointers in etl::is_aligned() ( #1082 )
...
* Add Zephyr build system module.yml (#1074 )
The Zephyr build system requires that modules have a `module.yml` file to specify where the module cmake and kconfig files are located.
These can also be explicitly set as "external" meaning that they do not exist within the module tree, itself. These build file can still be specified elsewhere via cmake variables, explained more in-depth here: https://docs.zephyrproject.org/latest/develop/modules.html#modules-module-ext-root
This change makes it such that ETL can be included more easily in zephyr projects running on embedded systems. A similar change can be observed in the public nanopb repository, where the repo only requires its own `zephyr/module.yml` file to be found by the zephyr build system, but the kconfig and cmake additions can exist outside of the library repository.
* Support const pointers to etl::is_aligned()
---------
Co-authored-by: Zach Van Camp <marshmilo100@gmail.com>
2025-04-30 12:22:38 +01:00
John Wellbelove
5a02c061e9
Changes merged from chrono updates
2025-04-18 11:30:43 +01:00
John Wellbelove
38c9cab2f7
Minor style change
2025-04-17 14:06:34 +01:00
John Wellbelove
88adbab3f4
Added exclusive_disjunction
2025-04-17 10:16:09 +01:00
John Wellbelove
b966e2aca7
Minor style change
2025-04-17 10:15:12 +01:00
John Wellbelove
459709bff5
Minor style change
2025-04-16 19:33:24 +01:00
John Wellbelove
01f7cf2b17
C++11 compatibility updates
2025-04-15 19:50:31 +01:00
John Wellbelove
192703be9f
C++11 compatibility updates
2025-04-15 08:23:09 +01:00
John Wellbelove
2f7cab3520
C++11 compatibility updates
2025-04-15 07:54:22 +01:00
John Wellbelove
7726faaf97
Synchronised type_traits.h with generator
2025-04-14 17:18:35 +01:00
John Wellbelove
b6e21ca57d
Refactored some traits to be implemented by etl::conjunction and etl::disjunction
2025-04-14 09:52:25 +01:00
John Wellbelove
d9af24f34b
Sopporting changes for etl::tuple
2025-04-14 09:51:28 +01:00
John Wellbelove
2fd887ecc3
C++03 compatibility for etl::typed_storage
2025-04-14 09:50:49 +01:00
John Wellbelove
f85bac450c
Added etl::tuple
2025-04-14 09:50:09 +01:00
John Wellbelove
73308ede00
Made is_truncated available for all configurations
2025-04-12 15:04:21 +01:00
Mario Luzeiro
520bcf876b
fix missing is_secure function when building without ETL_HAS_STRING_CLEAR_AFTER_USE ( #1067 )
2025-04-12 10:52:36 +01:00
John Wellbelove
209e8ceedd
Added C++03 compatibility
2025-04-12 10:46:27 +01:00
John Wellbelove
9bbd4763b0
Merge branch 'pull-request/#1023-Alignment-typed-storage' of https://github.com/ETLCPP/etl into pull-request/#1023-Alignment-typed-storage
2025-04-02 16:19:49 +01:00
Roland Reichwein
7d91e1f152
Alignment typed storage ( #1023 )
...
* Add etl::typed_storage based on etl::aligned_storage_as
* Have create() instead of emplace()
2025-04-02 15:59:37 +01:00
John Wellbelove
a6ed8bd4e9
Remove unnecessary asserts
2025-04-01 09:43:02 +01:00
John Wellbelove
e46563fafc
Work in progress
2025-03-31 20:25:33 +01:00
John Wellbelove
83e8473864
Work in progress
2025-03-31 11:25:25 +01:00
John Wellbelove
21ea151532
#1056 Bug: variadic_variant doesn't use the type_id_t type to store type_id
2025-03-28 15:35:45 +00:00
John Wellbelove
6508e61153
etl::span constexpr fix
2025-03-28 15:11:29 +00:00
John Wellbelove
60041bf56a
#1057 ETL_DECLARE_DEBUG_COUNT increases RAM usage even when ETL_DEBUG_COUNT NOT defined
2025-03-28 11:19:20 +00:00
John Wellbelove
7e85fd7926
#1057 ETL_DECLARE_DEBUG_COUNT increases RAM usage even when ETL_DEBUG_COUNT NOT defined
2025-03-28 11:16:08 +00:00
John Wellbelove
dac1602291
Merge branch 'pull-request/#1055-Add-enable_if-restriction-for-span-constructor-from-c-array' into development
...
# Conflicts:
# include/etl/span.h
# test/test_span_fixed_extent.cpp
2025-03-28 10:10:52 +00:00
John Wellbelove
077518f4fb
Added ETL_ASSERT for copy construction of dynamic span to fixed span
...
Asserts if the sizes are not equal
2025-03-28 10:07:21 +00:00
Andreas
9953c4d139
Returning const ref of member from const member function ( #1052 )
...
The `const` marked function needs to return a `const` reference to a member variable
Co-authored-by: Andreas Pelczer <pelczer@stoerk-tronic.com>
2025-03-27 15:25:43 +00:00
John Wellbelove
92cc068f52
Added etl::monostate as a separate header monostate.h so that it can be used without have to include variant.h
2025-03-27 15:25:42 +00:00
John Wellbelove
aacde24aa5
Changed span_base to span_tag
...
Removed #include of <span>
2025-03-27 15:25:41 +00:00
mike919192
c1cc9f584b
Potential fix for span construct ( #1051 )
...
* Try fix for span constructors
* Make base class public
2025-03-27 15:24:44 +00:00
John Wellbelove
5852ab3b74
Refactored variant_variadic to use etl::nth_type for etl::variant_alternative implementation
...
Refactored C++11 & C++14 support.
2025-03-27 15:24:43 +00:00
John Wellbelove
13bb9a6df8
Comments for nth_type
2025-03-27 15:24:42 +00:00
mike919192
418513f3f4
Implement << operator for std basic_ostream and etl string_view ( #1040 )
...
* Implement << operator for std basic_ostream and etl string_view
* Implement << operator for std basic_ostream and etl ibasic_string. Still working through tests
* Should be all tests
* Fix comment
2025-03-27 15:24:42 +00:00
John Wellbelove
5d0a77dc76
Modified etl::variant_variadic to use etl::type_list in place of etl::parameter_pack
2025-03-27 15:24:40 +00:00
John Wellbelove
d4f1c89ff4
Refactored and simplified some features of etl::type_list
...
Removed nth_type specialisation for etl::type_list
2025-03-27 15:24:40 +00:00
John Wellbelove
a86b124019
Attempt to fix some sanitizer issues for tests
2025-03-27 15:24:39 +00:00
John Wellbelove
ebc588a477
Added etl::index_of_type as a complement to etl::nth_type
2025-03-27 15:24:38 +00:00
John Wellbelove
34f536548f
Renamed type_list_index_of to type_list_index_of_type
2025-03-27 15:24:38 +00:00
John Wellbelove
137a5f58f2
Added etl::type_list_type_at_index
2025-03-27 15:24:37 +00:00
Roland Reichwein
d9d9ae1e53
Add traits to type_list ( #1044 )
2025-03-27 15:24:36 +00:00
John Wellbelove
9d74b9c093
Removed duplicated header includes
2025-03-27 15:24:34 +00:00
John Wellbelove
ecf2966e40
Minor format change
2025-03-27 15:23:46 +00:00
rolandreichweinbmw
a26fed1a89
etl::span: Add advance(), copy(), reinterpret_as() ( #1024 )
...
* etl::span: Add advance(), copy(), reinterpret_as()
* Added further tests for span::reinterpret_as
* Fix size of unaligned_type on Windows
Multiple inheritance leads to additional 1 byte for the second base class.
Fixing it by not inheriting but aggregating via typedef.
2025-03-27 15:23:45 +00:00
John Wellbelove
90e432cd43
Added ETL_HAS_ATOMIC_ALWAYS_LOCK_FREE macro and has_atomic_always_lock_free trait
...
Fixed coditional unit tests in test_atomic
2025-03-27 15:23:45 +00:00
John Wellbelove
1274ba263b
Integration of contains and contains_node
2025-03-27 15:23:44 +00:00
rolandreichweinbmw
a6e64af085
Add contains() and contains_node() to etl::intrusive_forward_list and etl::intrusive_list ( #1036 )
...
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2025-03-27 15:23:43 +00:00