John Wellbelove
18a7e79c56
Added etl::typed_storage_ext and swap for same
2025-08-28 10:30:24 +01:00
John Wellbelove
0081cfa794
Modified etl::typed_storage
2025-08-26 17:38:46 +01:00
John Wellbelove
5f8b7f7120
Added builtin mem function tests
2025-08-22 19:20:15 +01:00
John Wellbelove
f801b9a093
Fix VS2022 filters
2025-08-20 09:25:50 +01:00
John Wellbelove
2a970134da
Removed releaser and destroyer in favour of lambdas and similar
2025-08-19 16:01:46 +01:00
John Wellbelove
4d5cb98d29
Fixed ETL_NOEXCEPT_IF_NO_THROW and #define ETL_NOEXCEPT_IF_NO_THROW_EXPR(...) for C++03
...
Updated example
Added releaser and destroyer functors to etl::ipool to simplify integration with etl::unique_ptr
2025-08-19 13:18:21 +01:00
John Wellbelove
ac1d2c82d1
Added not_null comparison tests
2025-08-18 17:13:07 +01:00
John Wellbelove
3a25d5934a
Added constexpr. Removed some member functions. Removed 'move' member functions for etl::not_null<etl::unique_ptr<T, TDeleter>>
2025-08-18 16:51:49 +01:00
John Wellbelove
2d22dfe236
Changed unique() to underlying_type()
...
Added underlying_type() to etl::not_null<T*>
2025-08-18 16:50:59 +01:00
John Wellbelove
877ef005ea
Fixed file Id error
...
Updated CMakeLists.txt for tests and syntax checks
2025-08-18 16:50:58 +01:00
John Wellbelove
28d90aa80c
Initial implementation
2025-08-18 16:50:57 +01:00
John Wellbelove
63d7470685
Added etl::nontype_t, with C++11 and C++17 alternatives
2025-08-18 14:22:33 +01:00
John Wellbelove
109ba9350d
Updated syntax check tests
2025-08-15 19:26:18 +01:00
John Wellbelove
efae99252b
Fixed VS2022 project file list
2025-08-15 10:25:08 +01:00
John Wellbelove
8c49e67702
Added return_type and argument_types to etl::delegate
2025-08-13 19:51:31 +01:00
John Wellbelove
f973d31ad1
Merge branch 'development' of https://github.com/ETLCPP/etl into development
...
# Conflicts:
# test/test_delegate_observable.cpp
2025-08-13 09:31:42 +01:00
John Wellbelove
b734df629b
Attempt to fix Github CI
...
GCC 11 incompatibility
2025-08-13 08:53:03 +01:00
John Wellbelove
4beadd18f4
Attempt to fix Github CI
...
GCC 11 incompatibility
2025-08-13 08:49:23 +01:00
John Wellbelove
8f94ef619a
Attempt to fix Github CI
...
GCC 11 incompatibility
2025-08-12 21:32:51 +01:00
John Wellbelove
5c24ae2f0d
Attempt to fix Github CI
...
GCC 11 incompatibility
2025-08-12 21:21:16 +01:00
John Wellbelove
3e95e772c3
Attempt to fix Github CI
2025-08-12 18:28:04 +01:00
John Wellbelove
310cc6e501
Attempt to fix Github CI
2025-08-12 18:22:52 +01:00
John Wellbelove
86f76933c1
Added full rounded integral division
2025-08-12 15:13:03 +01:00
John Wellbelove
ddfd3fa443
Added remaining limits tests
...
Fixed divide_round_half_odd and added tests
2025-08-11 20:19:18 +01:00
John Wellbelove
5c52fd19cc
Added new unit tests
...
Fixed integer overflow issue at limits
2025-08-11 09:49:37 +01:00
John Wellbelove
ff1e4296bc
Added complete set of rounded integral division
2025-08-07 18:45:46 +01:00
John Wellbelove
2de4057021
Added transition_to member function to change state
...
Pulled out the core state change code to process_state_change
2025-08-05 18:48:15 +01:00
John Wellbelove
1d4dbc8976
Added etl::fsm_state_pack and corresponding constructor
2025-08-04 16:10:04 +01:00
John Wellbelove
7504646301
Added delegate_observable
2025-08-03 16:22:50 +01:00
John Wellbelove
e67066b788
Added emplace type constructors to etl::optional
2025-08-02 13:47:33 +01:00
John Wellbelove
fa25b8cd5e
Added instructions and scripts the convert ETL header guards
2025-07-27 11:23:20 +01:00
John Wellbelove
e60f68bad8
Removed asserts from copy_s and move_s algorithms
2025-07-27 10:38:20 +01:00
John Wellbelove
05e45117ea
Update templates for pentential macro name conflicts
2025-07-26 13:23:02 +01:00
John Wellbelove
7858d66884
Removed redundant VS2022 project settings
2025-07-20 11:14:23 +01:00
John Wellbelove
5d7573e513
Minor changes
2025-07-20 11:05:44 +01:00
Mario Luzeiro
5c5e5df788
Implements deferred callback timer with optional priority ( #955 )
...
* Refactored callback_timer_locked to allow base class extention of tick method
* Implement callback timer deferred with priority option
---------
Co-authored-by: Mario Luzeiro <mluzeiro@gliderbits.com>
2025-07-20 08:36:04 +01:00
John Wellbelove
2c904baf80
Updated release notes
2025-07-19 16:10:08 +01:00
John Wellbelove
0e6e961039
#1126 to_arithmetic does not compile on C++98
2025-07-19 15:54:06 +01:00
John Wellbelove
7f53572b53
Fix gamma tests
2025-07-18 16:33:23 +01:00
John Wellbelove
d7875adf9e
Added CRC64-ISO added
2025-07-15 10:36:43 +01:00
John Wellbelove
481e29896a
Merge branch 'pull-request/#1149-Fix-bug-in-the-void-etl--unlink(first,-last)-for-bidirectional-links' into development
2025-07-14 09:53:40 +01:00
Sergei
4979c8a20b
Fix bug in the void etl::unlink(first, last) for bidirectional links. ( #1149 )
...
* Reproduce bug in the `void etl::unlink(first, last)` for bidirectional links.
- correct `test_unlink_range_bidirectional_link` unit test according to the documentation - now this test fails.
- enhance `test_intrusive_list::test_splice_range_self` unit test to verify also `etl_previous` links after splicing lists - now unit test crashes.
* Fix bug in the `void etl::unlink(first, last)` for bidirectional links.
- `test_unlink_range_bidirectional_link` unit test now is green.
- `test_intrusive_list::test_splice_range_self` is not crashing anymore and green.
2025-07-14 08:50:28 +01:00
John Wellbelove
be5a6e2951
Added CRC8 and CRC16 opensafety algorithms
2025-07-14 08:43:20 +01:00
John Wellbelove
73e354c3be
Added constexpr for delegate invocations
2025-07-14 08:42:27 +01:00
John Wellbelove
8e02bb3059
Strengthened static assert tests
...
Changed enable_if checks to static asserts
2025-07-13 10:33:30 +01:00
John Wellbelove
dffd86544c
Added etl::type_lists_are_convertible
2025-07-13 10:33:29 +01:00
John Wellbelove
7f7127a6ab
Added doxygen comments to etl::closure
...
Added bind member function for the full set of arguments
2025-07-11 11:46:47 +01:00
John Wellbelove
7535d9b63a
Merge branch 'pull-request/#1144-Add-support-for-CRC8-NRSC5' into development
2025-07-09 10:22:12 +01:00
John Wellbelove
99e3ebd3d5
Added crc8_nrsc5 for VS2022 and CMake projects
2025-07-09 10:21:35 +01:00
Cpt-Seablue
bb496e6262
Add support for CRC8-NRSC5 ( #1144 )
...
* Add CRC8-NRSC5 parameters
* Add CRC8-NRSC5 header
* Add CRC8-NRSC5 header
* Add tests
2025-07-08 20:48:17 +01:00
John Wellbelove
9b3d8dc96e
Fixed lower and upper bound tests for std::less comparator
2025-07-08 20:47:05 +01:00
John Wellbelove
67dfd5c0dd
Completed tests for const_map, const_multimap, const_setand const_multiset
2025-07-08 20:41:34 +01:00
John Wellbelove
89647c14f2
Fixed const_map and const_set operator== to check container sizes
2025-07-08 08:18:03 +01:00
John Wellbelove
9026ef8933
Merge branch 'pull-request/#1135-Fix-error-on-running-clang-test-only' into development
...
# Conflicts:
# test/vs2022/etl.vcxproj
# test/vs2022/etl.vcxproj.filters
2025-07-07 11:18:49 +01:00
rolandreichweinmusic
28da1fa3ef
Fix tests on big endian ( #1142 )
...
* Fix bitset_new test: bitset is implemented as little endian container
* Fix test_bsd_checksum.cpp: endian test was only implemented for little endian
* Fix endianness test
* Fix endian in crc tests
* Fix test_fnv_1
* Fix test_hash
* Fix test_jenkins
* Fix test_memory
* Fix pearson test
* Fix test_xor_rotate_checksum
* Fix murmur test
2025-07-07 08:55:59 +01:00
Roland Reichwein
cb6b384f88
Cleanup to get more independent of std ( #1139 )
...
* Remove redundant test.sh
* Fix includes according to usage / dependency in individual header files
2025-07-06 20:59:39 +01:00
John Wellbelove
feeb0d480a
Fixed C++03 compatibility
...
Added syntax checks for closure.h
2025-07-06 20:24:19 +01:00
Roland Reichwein
3c783e2de7
Add etl::closure ( #1137 )
2025-06-28 11:18:46 +01:00
John Wellbelove
3784991dd2
Added const_set_constexpr tests
2025-06-28 09:05:50 +01:00
John Wellbelove
5f73295392
Modified const_map & const_multimap type definitions
...
Added const_set
2025-06-28 08:53:48 +01:00
John Wellbelove
79f93b797b
Remove const_map test
2025-06-27 09:33:51 +01:00
John Wellbelove
39469d29dc
Revert "Split classes into ETL standard top level and 'i' base classes."
...
This reverts commit de13fb8afea9aa2777958d902336dcb04f87968e.
# Conflicts:
# include/etl/const_map.h
# include/etl/const_multimap.h
# test/test_const_map.cpp
# test/test_const_map_constexpr.cpp
# test/test_const_multimap.cpp
# test/test_const_multimap_constexpr.cpp
# test/vs2022/etl.vcxproj
# test/vs2022/etl.vcxproj.filters
2025-06-27 09:28:58 +01:00
John Wellbelove
f6b969eeba
Revert "etl::const_map completed"
...
This reverts commit 697cd0a5aaa87ab9da6d1ad337a6c55d9934be57.
# Conflicts:
# include/etl/const_map.h
2025-06-27 09:26:23 +01:00
John Wellbelove
3db20a4e91
Revert "Added const_map_ext and const_multimap_ext"
...
This reverts commit 8591569eb530a33a0d136bb5bfe2d1fe8c8d2f31.
# Conflicts:
# include/etl/const_map.h
# test/test_const_map.cpp
2025-06-27 09:25:03 +01:00
John Wellbelove
a94d0ce986
Revert "Work in progress"
...
This reverts commit 799280f615c4c46d68571e990926f2dd2fc3d64f.
# Conflicts:
# include/etl/const_map.h
# test/test_const_map.cpp
2025-06-27 09:22:31 +01:00
John Wellbelove
52cd92d31a
Minor format change
2025-06-26 20:23:24 +01:00
Roland Reichwein
3ec2db51c8
Fix error on running clang test only ( #1135 )
...
* Fix error on running clang test only
Consolidate tests by factoring out redundant test function
* Make run-tests.sh executable
2025-06-26 20:23:23 +01:00
John Wellbelove
8591569eb5
Added const_map_ext and const_multimap_ext
2025-06-26 20:23:22 +01:00
John Wellbelove
de13fb8afe
Split classes into ETL standard top level and 'i' base classes.
...
Split into const and constexpr unit tests files
2025-06-26 20:23:22 +01:00
John Wellbelove
4808919caf
Added value_compare to lexicographical_compare call
2025-06-26 20:23:21 +01:00
John Wellbelove
6530c9625f
Modified to have iconst_map base type
2025-06-26 20:23:20 +01:00
John Wellbelove
4d10d47f5e
Removed non-const iterator and pointer types
...
Updated Doxygen comments
2025-06-26 20:23:20 +01:00
John Wellbelove
697cd0a5aa
etl::const_map completed
2025-06-26 20:23:19 +01:00
John Wellbelove
4dee5e81cd
Work in progress
2025-06-26 20:23:18 +01:00
John Wellbelove
799280f615
Work in progress
2025-06-26 20:23:17 +01:00
John Wellbelove
9fdc1e1326
Minor format change
2025-06-26 20:22:41 +01:00
Roland Reichwein
51040d1a28
Fix error on running clang test only ( #1135 )
...
* Fix error on running clang test only
Consolidate tests by factoring out redundant test function
* Make run-tests.sh executable
2025-06-25 18:38:25 +01:00
rolandreichweinmusic
0f408a43ba
Fix gamma.h on i386 ( #1136 )
...
Add tests for gamma decode
2025-06-25 18:09:37 +01:00
John Wellbelove
64eb9742f0
Added const_map_ext and const_multimap_ext
2025-06-25 14:47:47 +01:00
John Wellbelove
e84be139c5
Split classes into ETL standard top level and 'i' base classes.
...
Split into const and constexpr unit tests files
2025-06-24 13:24:17 +01:00
John Wellbelove
d458811c26
Added value_compare to lexicographical_compare call
2025-06-24 13:19:56 +01:00
Roland Reichwein
185557db59
Fix usage of template keyword ( #1131 )
...
For non-GCC-compilers, the template keyword is being used in
parameter_pack.h for referring to a template template member.
However, clang 19 and 20 don't accept this.
It should be verified which compiler really needs the template
keyword here at all. If not, the if-branch can be removed.
Removed redundant ETL_USING_WIDE_CHARACTERS
Added using_libc_wchar_h to ETL traits
#1127 type_traits.h and C++03
Changed many instances of mem_copy to mem_move
2025-06-22 11:13:43 +01:00
John Wellbelove
62ffe81c1f
Modified to have iconst_map base type
2025-06-22 11:13:07 +01:00
John Wellbelove
eb6df0ec82
Removed non-const iterator and pointer types
...
Updated Doxygen comments
2025-06-16 08:30:35 +01:00
John Wellbelove
609dc3dc2d
etl::const_map completed
2025-06-15 20:11:08 +01:00
John Wellbelove
a2efcd2fe7
Work in progress
2025-06-15 17:32:49 +01:00
John Wellbelove
9832157fc4
Work in progress
2025-06-14 19:50:41 +01:00
John Wellbelove
ad9a17b6db
Removed redundant ETL_USING_WIDE_CHARACTERS
...
Added using_libc_wchar_h to ETL traits
2025-06-12 18:32:00 +01:00
John Wellbelove
a037af120b
Merge branch 'hotfix/Accomodate-libc++-with-disabled-wchar_t-features' into development
...
# Conflicts:
# include/etl/basic_string.h
2025-06-12 13:15:38 +01:00
John Wellbelove
8659091ff3
Fixed std::string_view include warning for < C++17
2025-06-11 13:16:30 +01:00
John Wellbelove
933da4dcb4
Added C++23 Preview configuration
2025-06-06 18:18:16 +01:00
John Wellbelove
59eab34162
Used mem_copy and mem_move to optimise vectors of pointers
2025-06-06 17:27:43 +01:00
John Wellbelove
2ff1ed1a12
Removed instances of ETL_NTH_TYPE_FORCE_CPP03_IMPLEMENTATION
2025-06-06 13:53:26 +01:00
John Wellbelove
2085295358
#1119 Forced compiler error in nth_type.h breaks containers for C++03
2025-06-06 12:17:49 +01:00
John Wellbelove
78d3c45cfd
Fixed const&& move constructors
...
# Conflicts:
# include/etl/tuple.h
2025-06-05 12:01:37 +01:00
John Wellbelove
ccb37a12a3
Fixed const&& move constructors
...
# Conflicts:
# include/etl/tuple.h
2025-06-05 09:57:53 +01:00
John Wellbelove
cd273e777d
Initial solution
2025-06-04 10:12:01 +01:00
John Wellbelove
276415dc19
Updated release
2025-06-01 18:08:38 +01:00
John Wellbelove
f39922dddc
Merge branch 'feature/#1100-Optimise-string-class-initialisation-from-C-data' into development
...
# Conflicts:
# include/etl/basic_string.h
2025-06-01 13:50:25 +01:00
John Wellbelove
155050b816
Optimisation of strings
2025-06-01 13:49:14 +01:00
John Wellbelove
8fb4090e75
Minor script updates
2025-05-31 21:49:37 +01:00
John Wellbelove
0428118553
Optimisation of strings
2025-05-31 21:47:25 +01:00
John Wellbelove
896baaa076
Minor script updates
2025-05-31 15:56:24 +01:00
John Wellbelove
1cb75ff072
Added -Wformat-security
2025-05-30 13:52:37 +01:00
John Wellbelove
ddcc975cec
Optimisation of strings
2025-05-30 13:52:37 +01:00
John Wellbelove
e87e24557f
Hardened mem_set and mem_char parameter requirements
2025-05-30 13:52:36 +01:00
Roland Reichwein
15ba2b71cb
Remove -Wuseless-cast ( #1110 )
2025-05-30 11:41:07 +01:00
John Wellbelove
083439f60b
Added -Wformat-security
2025-05-29 20:15:35 +01:00
John Wellbelove
cb6d924dad
Optimisation of strings
2025-05-29 20:15:19 +01:00
John Wellbelove
e8a5673f7a
Hardened mem_set and mem_char parameter requirements
2025-05-29 20:14:37 +01:00
Roland Reichwein
09acfca5a6
Remove -Wuseless-cast ( #1110 )
2025-05-28 13:21:04 +01:00
John Wellbelove
ffc17160da
Added support for self transition to etl::hfsm
...
Changed all instances of 'return STATE_ID' to 'return No_State_Change'
2025-05-27 17:07:58 +01:00
Roland Reichwein
0abd618271
Add C++23 detection ( #1109 )
2025-05-27 16:11:45 +01:00
Roland Reichwein
65bae7e264
Add unit tests for bit_stream ( #1108 )
...
* Add unit tests for bit_stream
* Include issue number in test name
* Included issue number in test name
---------
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2025-05-27 09:02:00 +01:00
John Wellbelove
84ef87dbf0
Added missing files in unit test CMakeLists.txt
2025-05-26 10:23:56 +01:00
John Wellbelove
a0d81170c8
Added inline namespaces
2025-05-25 19:07:18 +01:00
John Wellbelove
afdb37715d
Added arithmetic tests
2025-05-25 19:06:27 +01:00
John Wellbelove
2df0039781
Moved chrono.h in the VS2022 project list
2025-05-22 10:20:21 +01:00
John Wellbelove
f33c40001f
Added get_token_list to string_utilities to retrieve multiple tokens
2025-05-21 10:21:30 +01:00
John Wellbelove
c25df24b03
Allow zero sized etl::array
2025-05-18 13:41:01 +01:00
John Wellbelove
ba31479481
Added sys_day and local_day constructors and conversions
2025-05-17 21:00:23 +01:00
John Wellbelove
d04ee8c5e7
Added configuration for selection of STL-like or ETL-verbose chrono literals
2025-05-17 11:46:52 +01:00
John Wellbelove
a724dd08b8
Removed useless-cast warning
2025-05-15 19:05:49 +01:00
John Wellbelove
7b603e201c
Merge branch 'feature/add-time-date-classes' into development
...
# Conflicts:
# include/etl/tuple.h
# test/vs2022/etl.vcxproj.filters
2025-05-14 19:23:21 +01:00
John Wellbelove
9e965b07e0
Small layout and comment alterations
2025-05-14 19:16:42 +01:00
Roland Reichwein
420474593b
Added iterator and const_iterator to etl::ipool ( #1043 )
...
* Added iterator and const_iterator to etl::ipool
* Adjusted source code format
2025-05-14 19:14:23 +01:00
Roland Reichwein
fe928fa53a
Support C++23 ( #1069 )
...
* Support C++23
* Fix syntax checks for correct C++ standard version
---------
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2025-05-13 21:27:04 +01:00
Roland Reichwein
9f5ad35d41
Cleanup fixes for C++03 ( #1089 )
...
* Typo fixes
* Fix typo
---------
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2025-05-13 21:21:50 +01:00
John Wellbelove
915d668904
Added chrono.h to tests
2025-05-13 08:28:37 +01:00
John Wellbelove
f3541696fb
C++03, 11, 14, 17, 20 compatibility changes
2025-05-12 12:10:41 +01:00
John Wellbelove
12328670dd
Work in progress
2025-05-11 14:11:22 +01:00
John Wellbelove
c37e48d589
Merge branch 'feature/#1085-Add-The-Remaining-Math-Operators-To-ETL_TYPEDEF' into development
2025-05-09 09:00:20 +01:00
John Wellbelove
524ebf9b9f
Small style changes to etl::span take()
2025-05-07 07:26:26 +01:00
John Wellbelove
1d19ac22cd
Added licence text to tuple header
...
Removed redundant include
2025-05-07 07:25:41 +01:00
Roland Reichwein
ba487bcb04
Add take() to etl::span ( #1083 )
2025-05-06 08:52:51 +01:00
John Wellbelove
0b280bf5f0
Fixed test syntax error
2025-05-05 21:10:03 +01:00
Helder Duarte
66af2a69c1
Add swap(circular_buffer_ext&&) ( #1068 ) ( #1072 )
2025-05-05 19:16:38 +01:00
John Wellbelove
394b1110fb
Added all arithmetic operators to type_def
2025-05-05 18:01:29 +01:00
John Wellbelove
22391aa750
Imported and updated etl::underlying_type
2025-05-03 08:25:45 +01:00
John Wellbelove
879d620094
Merge branch 'development' of https://github.com/ETLCPP/etl into development
2025-05-01 07:31:28 +01:00
Jiang Yi
f69da8577e
Support etl::underlying_type with compiler builtin ( #1045 )
...
msvc is unsupported currently
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2025-04-30 17:01:44 +01:00
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
BartolomeyKant
2fd4e171ba
rise up cmake minimum required ( #1066 )
...
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2025-04-30 16:47:39 +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
2b141e0f22
Fixed tests to be compatible with std::chrono
2025-04-30 12:07:15 +01:00
John Wellbelove
42ba4d8248
Updated tests
2025-04-30 09:26:34 +01:00
John Wellbelove
5143aa7f53
Added year_month_day and year_month_day_last classes and tests
2025-04-28 20:00:18 +01:00
John Wellbelove
279ce8f0dc
Added more chrono classes and operators
2025-04-27 20:22:45 +01:00
John Wellbelove
4485a90c04
Added etl::chrono::year_month
2025-04-25 19:21:41 +01:00
John Wellbelove
d604d40648
Added etl::chrono::hh_mm_ss
2025-04-25 18:07:43 +01:00
John Wellbelove
ee748eb6cb
Updates to chrono classes
2025-04-22 20:16:52 +01:00
John Wellbelove
a27aa2a556
Full etl:chrono::duration implementation and unit tests
2025-04-20 13:33:30 +01:00
John Wellbelove
fedf429d02
Merge branch 'development' into feature/add-time-date-classes
...
# Conflicts:
# .gitignore
# include/etl/platform.h
# include/etl/ratio.h
# test/CMakeLists.txt
# test/test_ratio.cpp
# test/vs2022/etl.vcxproj
# test/vs2022/etl.vcxproj.filters
2025-04-19 12:30:36 +01:00
John Wellbelove
5a02c061e9
Changes merged from chrono updates
2025-04-18 11:30:43 +01:00
John Wellbelove
bc158cbcbc
Updates to chrono classes
2025-04-18 10:50:48 +01:00
John Wellbelove
88adbab3f4
Added exclusive_disjunction
2025-04-17 10:16:09 +01:00
John Wellbelove
3f3a8b06d9
Fix misspelt header include
2025-04-16 19:38:11 +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
2f7cab3520
C++11 compatibility updates
2025-04-15 07:54:22 +01:00
John Wellbelove
475674288c
Added etl::tuple to VS project
...
Added tuple to CMakeLists.txt
2025-04-14 17:34:27 +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
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
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
409dae2c36
Fix unused variable warnings
2025-04-02 13:29:59 +01:00
John Wellbelove
a5f0cfe60e
Enabled constexpr rounding tests for C++14 and above.
2025-04-02 13:16:57 +01:00
John Wellbelove
1ada87ad76
Changed minimum cmake version to 3.10.0
2025-04-02 12:58:38 +01:00
John Wellbelove
a1bfce9a41
Full updated tests
2025-04-01 11:58:55 +01:00
John Wellbelove
efc3238765
Full updated tests
2025-04-01 09:36:41 +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
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
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
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
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
4b3987c5e1
Reversed loop change
2025-03-27 15:24:41 +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
a6615a419d
Added unit tests for initializer_list construction
2025-03-27 15:24:36 +00:00
John Wellbelove
02c5933aff
Updated bash test script help
2025-03-27 15:24:35 +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
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
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
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
John Wellbelove
af725afc79
Added etl::monostate as a separate header monostate.h so that it can be used without have to include variant.h
2025-03-26 08:34:13 +00:00
John Wellbelove
2bbc3c3f81
Merge branch 'pull-request/#1051-Potential-fix-for-span-construct' into development
...
# Conflicts:
# CONTRIBUTING.md
# include/etl/span.h
# test/test_span_fixed_extent.cpp
2025-03-26 08:04:33 +00:00
John Wellbelove
e9adc288c6
Changed span_base to span_tag
...
Removed #include of <span>
2025-03-25 19:47:32 +00:00
John Wellbelove
d6e6816ffc
Refactored variant_variadic to use etl::nth_type for etl::variant_alternative implementation
...
Refactored C++11 & C++14 support.
2025-03-18 14:45:38 +00:00
mike919192
ecf5d9bca3
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-17 08:54:28 +00:00
John Wellbelove
b021276519
Reversed loop change
2025-03-17 08:53:18 +00:00
John Wellbelove
bcf5ec4985
Merge branch 'pull-request/#1044-Add-traits-to-type_list' into development
2025-03-16 19:10:06 +00:00
John Wellbelove
03ca499e5e
Refactored and simplified some features of etl::type_list
...
Removed nth_type specialisation for etl::type_list
2025-03-16 19:08:55 +00:00
John Wellbelove
495ea2b943
Attempt to fix some sanitizer issues for tests
2025-03-16 19:07:25 +00:00
John Wellbelove
36b4d51baf
Added etl::index_of_type as a complement to etl::nth_type
2025-03-16 19:06:34 +00:00
John Wellbelove
53887fa105
Renamed type_list_index_of to type_list_index_of_type
2025-03-14 15:46:25 +00:00
John Wellbelove
f1d5b16d38
Added etl::type_list_type_at_index
2025-03-09 10:47:24 +00:00
Roland Reichwein
d4813dff86
Add traits to type_list ( #1044 )
2025-03-09 09:41:15 +00:00
John Wellbelove
c19a3fe085
Added unit tests for initializer_list construction
2025-03-04 09:27:39 +00:00
John Wellbelove
ceeb2e706e
Updated bash test script help
2025-03-04 09:27:07 +00:00
rolandreichweinbmw
fc638a92a6
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-03 10:04:09 +00:00
John Wellbelove
071a983cba
Added ETL_HAS_ATOMIC_ALWAYS_LOCK_FREE macro and has_atomic_always_lock_free trait
...
Fixed coditional unit tests in test_atomic
2025-03-03 10:03:42 +00:00
rolandreichweinbmw
12743be9e2
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-02 11:09:32 +00:00
rolandreichweinbmw
64ae22a093
Intrusive forward list add remove by pointer ( #1026 )
...
* Add intrusive_forward_list::remove() element by pointer
* Add test
2025-03-02 11:05:59 +00:00
John Wellbelove
6459ce7b5f
Improved implementation of etl::is_base_of_all
2025-03-02 09:43:31 +00:00
John Wellbelove
dc21da2cd4
Merge branch 'pull-request/#1026-Intrusive-forward-list-add-remove-by-pointer' into development
...
# Conflicts:
# include/etl/intrusive_forward_list.h
2025-03-02 08:32:28 +00:00
John Wellbelove
68dac39104
Added erase from pointer to node
2025-03-02 08:31:14 +00:00
John Wellbelove
2746cf4060
Added variadic contruction
...
Added erase from pointer to node
2025-03-02 08:30:54 +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
260a3f4a48
Added variadic constructors
2025-03-01 13:39:51 +00:00
John Wellbelove
a28cbddd4b
Added etl::create_linked_list and etl::detach_linked_list to the intrusive link utilities
2025-02-27 10:02:56 +00:00
John Wellbelove
5e689c0a66
Fix some sanitizer issues
2025-02-23 11:54:38 +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
d1e5112e2a
Restored full units test permutations
...
Fixed unit test for non-virtual message_packet
2025-02-17 12:45:32 +00:00
John Wellbelove
baf12b1fcb
Changed etl::message_packet to not require virtual messages
2025-02-17 10:42:25 +00:00
John Wellbelove
6c7cb5ac18
Added test for a constexpr lambda under C++17 and above
2025-02-17 08:00:17 +00:00
John Wellbelove
a2bb84d9e6
Fixed mismatch of double and long double in test_unaligned_type_ext.cpp unit tests
2025-02-17 07:59:31 +00:00
John Wellbelove
3ed1c49d35
Added constexpr lambda test to delegate unit tests
2025-02-13 17:11:48 +00:00
John Wellbelove
94e243e274
Fix unaligned_type floating point checks in unit test
2025-02-13 17:11:01 +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
deb26318fb
Unit test for delegate initialisation with non-capturing lambda as a constexpr function pointer
2025-02-11 11:41:46 +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
574da35b10
Attempt to fix Github CI errors
2025-02-03 15:03:28 +00:00
John Wellbelove
7aa7c870b3
Updates to CI scripts
2025-02-03 11:37:26 +00:00
John Wellbelove
d1b2a87b92
Updates to CI scripts
2025-02-01 19:47:55 +00:00
John Wellbelove
04b3892509
Updates to CI scripts
2025-02-01 19:18:34 +00:00
John Wellbelove
959becdb2e
Updates to CI scripts
2025-02-01 18:47:39 +00:00
John Wellbelove
98c35f7f3e
Updates to CI scripts
2025-02-01 18:27:05 +00:00
John Wellbelove
548c2be4c3
Merge branch 'hotfix/#1019-UB-when-passing-a-temporary-lambda-to-a-delegate' into development
2025-02-01 17:55:30 +00:00
John Wellbelove
344618d744
Merge branch 'feature/#1022-Add-option-to-disable-non-lock-free-atomics' into development
2025-02-01 17:55:10 +00:00
John Wellbelove
00d020bf43
Refactored syntax check tests
2025-02-01 15:19:55 +00:00
John Wellbelove
8b2009b45c
Added is_always_lock_free member constant to etl::atomic
2025-02-01 15:19:07 +00:00