2139 Commits

Author SHA1 Message Date
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
rolandreichweinbmw
a733502359 Intrusive forward list add remove by pointer (#1026)
* Add intrusive_forward_list::remove() element by pointer

* Add test
2025-03-27 15:23:43 +00:00
John Wellbelove
9c22c6ce50 Added static assert for variadic constructor
Fixed missing this-> prefix for current_size
2025-03-27 15:23:42 +00:00
John Wellbelove
6e7df8c581 Added erase from pointer to node 2025-03-27 15:23:41 +00:00
John Wellbelove
74cb40c6e1 Added variadic contruction
Added erase from pointer to node
2025-03-27 15:23:41 +00:00
rolandreichweinbmw
ef2337cfe5 Cleanup (#1039) 2025-03-27 15:23:28 +00:00
John Wellbelove
b5ee8fb259 Modified create_linked_list functions to not null terminal link pointers 2025-03-27 15:23:27 +00:00
John Wellbelove
8890f43918 Added variadic constructors 2025-03-27 15:23:26 +00:00
John Wellbelove
e103d0959f Added etl::create_linked_list and etl::detach_linked_list to the intrusive link utilities
# Conflicts:
#	include/etl/intrusive_links.h
2025-03-27 15:23:00 +00:00
John Wellbelove
4197a1ee8a Added static assert for variadic constructor
Fixed missing this-> prefix for current_size
2025-03-27 15:22:42 +00:00
John Wellbelove
9a07ef9cae Improved implementation of etl::is_base_of_all 2025-03-27 15:22:41 +00:00
John Wellbelove
13dfaaa748 Added erase from pointer to node 2025-03-27 15:22:40 +00:00
John Wellbelove
277cd68301 Added variadic contruction
Added erase from pointer to node
2025-03-27 15:22:40 +00:00
rolandreichweinbmw
2b437a60b2 Cleanup (#1039) 2025-03-27 15:22:39 +00:00
John Wellbelove
222cf93056 Modified create_linked_list functions to not null terminal link pointers 2025-03-27 15:22:38 +00:00
John Wellbelove
13ee4bb411 Added variadic constructors 2025-03-27 15:22:38 +00:00
John Wellbelove
44a0d7c3c5 Added etl::create_linked_list and etl::detach_linked_list to the intrusive link utilities 2025-03-27 15:22:37 +00:00
mike919192
a75d1d2a30
Add enable_if restriction for span constructor from c array (#1055)
* Add enable_if restriction for span constructor from c array

* Try to simplify enable if

* Revert "Try to simplify enable if"

This reverts commit b133835f8cfe43e75478f2a8df06ad5265b7f163.
2025-03-27 15:15:31 +00:00
rolandreichweinbmw
37539a2761
Intrusive forward list add remove by pointer (#1026)
* Add intrusive_forward_list::remove() element by pointer

* Add test
2025-03-01 18:24:30 +00:00
John Wellbelove
c882a9c500 Update version 2025-02-23 12:47:19 +00:00
John Wellbelove
3fafc61bba #1032 Tasking Compiler Failure For parameter_pack.h 2025-02-23 12:42:28 +00:00
John Wellbelove
109d45c646 Added additional checks for self assignment 2025-02-22 13:59:48 +00:00
John Wellbelove
da5404b748 #1031 etl::string is invalid if calling assign() with itself 2025-02-21 10:52:47 +00:00
John Wellbelove
e9ed2fe044 Update class generators to match code changes 2025-02-21 08:56:58 +00:00
John Wellbelove
7af020bde8 Updated message_router_generator.h 2025-02-19 20:11:53 +00:00
John Wellbelove
52c6bca34d Improve efficiency of etl::string_view::compare with text pointer 2025-02-17 19:11:01 +00:00
John Wellbelove
baf12b1fcb Changed etl::message_packet to not require virtual messages 2025-02-17 10:42:25 +00:00
John Wellbelove
ac8566ade2 Merge branch 'development' into pull-request/#1027-Add-etl-make_span() 2025-02-11 14:55:56 +00:00
rolandreichweinbmw
f02c89a867
Add etl::make_span() (#1027) 2025-02-11 11:52:42 +00:00
John Wellbelove
58c57b0a52 Made bool operator explicit for C++11 and above 2025-02-07 18:27:20 +00:00
John Wellbelove
1f897e1095 Added etl::function traits
Removed private delegate function_traits
Added etl::type_list + etl::nth_type overloads
2025-02-07 18:26:39 +00:00
John Wellbelove
dd4d0088c5 Added ETL_NODISCARD to make_delegete functions 2025-02-04 14:05:11 +00:00
John Wellbelove
37fd5b7c45 Attempt to fix Github CI errors 2025-02-03 16:19:47 +00:00
John Wellbelove
574da35b10 Attempt to fix Github CI errors 2025-02-03 15:03:28 +00:00
John Wellbelove
6872131920 Updates to CI scripts 2025-02-01 19:44:55 +00:00