1922 Commits

Author SHA1 Message Date
Chiraffollo
083bafa3ce Fix missing partial specialisation equal operators (#927) 2024-07-28 16:49:03 +01:00
John Wellbelove
324f5ebea9 Small format changes 2024-07-28 16:48:45 +01:00
Chiraffollo
83c55ad77e Fix issue #923 equality operator for class expected (#926)
* Add equality operators for class expected

* Add missing unequal operator

---------

Co-authored-by: Oliver Marx <omarx@de.pepperl-fuchs.com>
2024-07-28 16:48:17 +01:00
John Wellbelove
32f5d19792 Added is_active member function to callback_timer classes. 2024-07-28 16:47:13 +01:00
John Wellbelove
3a557c6f1a Removed asserts from etl::unique_ptr 2024-07-28 16:47:13 +01:00
Tigran Khachatryan
c9c01092d6 Add an etl::nullptr_t type to <etl/nullptr.h> (#924)
* Add an etl::nullptr_t type

* etlcpp/etl issue #921 (etl::unique_ptr reset): add etl::unique_ptr(...)::reset(ETL_NULLPTR)

Remove default argument for the normal reset method of etl::unique_ptr (sorry, didn't notice 😬)

Silence the unused argument warning

Fix operator =(nullptr)

Replace the nullptr_t enum with a class which acts more similar to C++11 nullptr

* Add member pointer support and delete the addressof operator

* "Delete" etl::addressof(ETL_NULLPTR)

* Ensure compatibility with C++98

* ACTUALLY ensure compatibility with C++98

I'm stupid :/

* Correct definition according to cppreference
2024-07-28 16:47:13 +01:00
John Wellbelove
d8faf5655c Add missing swap implementations for expected (#928)
* Fix missing partial specialisation equal operators

* Add missing swap implementations for expected
2024-07-28 16:47:12 +01:00
Chiraffollo
64be8a63d7 Add missing swap implementations for expected (#928)
* Fix missing partial specialisation equal operators

* Add missing swap implementations for expected
2024-07-28 16:47:12 +01:00
Chiraffollo
0c87973061 Fix missing partial specialisation equal operators (#927) 2024-07-28 16:47:12 +01:00
John Wellbelove
24824d2095 Added ETL_USING_LEGACY_VARIANT & ETL_NOT_USING_LEGACY_VARIANT
Added some legacy API member functions to new variant type.
2024-07-28 16:47:12 +01:00
John Wellbelove
6a8d183797 Small format changes 2024-07-28 16:47:12 +01:00
Chiraffollo
752617ab4c Fix issue #923 equality operator for class expected (#926)
* Add equality operators for class expected

* Add missing unequal operator

---------

Co-authored-by: Oliver Marx <omarx@de.pepperl-fuchs.com>
2024-07-28 16:47:12 +01:00
Rafael Laya
02981a5cc2
Fixes compiler detection with Wundef (#934)
* Fix doc comment for pool::allocate() (#914)

* Fixes compiler detection with Wunder

---------

Co-authored-by: Michael K <130953568+kmichaelk@users.noreply.github.com>
Co-authored-by: Rafael Laya <rafaellaya@meta.com>
2024-07-28 16:45:08 +01:00
Chiraffollo
5d97f075a5
Fix issue #931 (#932)
* Fix doc comment for pool::allocate() (#914)

* Fix issue #931

Superfluous curly braces removed

---------

Co-authored-by: Michael K <130953568+kmichaelk@users.noreply.github.com>
2024-07-23 15:41:00 +01:00
jaskij
64f620c1a8
fix c++20-compat false positive (#909)
* fix c++20-compat false positive

* move the c++20 compat warning suppression to a separate header

* fix GCC/clang in private/diagnostic_cxx_20_compat_push.h

---------

Co-authored-by: Jan Dorniak <jdorniak@ultima-automatyka.pl>
2024-07-02 09:35:24 +01:00
John Wellbelove
ce24b0cc6e Refactored base64 encoder and decoder 2024-06-26 14:56:00 +01:00
John Wellbelove
dcc3e7d938 Added parameter_type_t 2024-06-24 18:20:34 +01:00
John Wellbelove
1c261bf297 Merge branch 'feature/Base64-codec' into development 2024-06-24 17:46:00 +01:00
John Wellbelove
208d8f9642 Implementation of Base64 encoder and decoder 2024-06-24 17:44:53 +01:00
John Wellbelove
aab8630c1a Refactored base64 encoder and decoder 2024-06-22 12:37:58 +01:00
John Wellbelove
96a1105891 Refactored base64 encoder and decoder 2024-06-19 20:22:57 +01:00
John Wellbelove
f7382f4713 Refactored base64 encoder and decoder 2024-06-17 14:23:42 +01:00
John Wellbelove
ab1ea83f77 Refactored base64 encoder and decoder 2024-06-16 13:53:05 +01:00
John Wellbelove
211f872318 Refactored base64 encoder 2024-06-14 20:00:28 +01:00
John Wellbelove
5c2615ac30 Partial refactor into separate encode and decoder headers
Changed to delegate callback based operation
2024-06-14 11:54:23 +01:00
John Wellbelove
e159a6b7ff Merge branch 'pull-request/#905-Add-support-for-type_identity' into development 2024-06-11 13:51:59 +01:00
Tigran Khachatryan
6ced0630a9
etl/type_traits.h: Add support for type_identity (#905)
* etl/type_traits.h: Add support for type_identity

* test/test_type_traits.cpp: Add a test for etl::type_identity (type_identity_test_add(1.5f, 2) == 3.5f)

* Update test_type_traits.cpp

Use CHECK_CLOSE instead of CHECK for equality
2024-06-11 13:43:59 +01:00
John Wellbelove
bb71b60496 Updated version and release 2024-06-05 17:33:16 +01:00
John Wellbelove
9247c14e82 Changed std algorithms to etl 2024-06-05 17:31:01 +01:00
John Wellbelove
a8f59355fe Changed std algorithms to etl 2024-06-05 14:03:37 +01:00
Saku Glumoff
496c8a2e7c
Fix doc comment for exception::line_number() (#901)
The documentation comment for `exception::line_number()` in
`include/etl/exception.h` states falsely that the return type for
the function is a `const char*`.

It should state that the return type is `numeric_type`,
which is an `int`.

So change the documentation comment to reflect that the return type is
an `int`.
2024-06-04 18:17:41 +01:00
John Wellbelove
45333cae91 Merge branch 'development' into feature/Base64-codec
# Conflicts:
#	arduino/library-arduino.json
#	arduino/library-arduino.properties
#	include/etl/iterator.h
#	include/etl/version.h
#	library.json
#	library.properties
#	test/CMakeLists.txt
#	test/vs2022/etl.vcxproj.filters
#	version.txt
2024-06-02 10:19:09 +01:00
John Wellbelove
8bf527e087 Updated version and release 2024-05-31 17:16:12 +01:00
John Wellbelove
0d1db08c4a Make conversion operator public 2024-05-31 17:06:48 +01:00
John Wellbelove
bbfce66abc Added template parameter clamp functions 2024-05-28 11:58:07 +01:00
John Wellbelove
e2333886a5 Fixed static & constexpr order 2024-05-25 12:02:20 +01:00
John Wellbelove
e11548fc57 Updated version and release notes 2024-05-15 20:47:11 +01:00
John Wellbelove
1a09998752 Removed ETL_CONSTEXPR from size() 2024-05-15 20:46:49 +01:00
John Wellbelove
cdd3bae357 Updated version and release notes 2024-05-13 13:45:28 +01:00
John Wellbelove
d69779a8cf Added GCD and LCM algorithms 2024-05-13 13:45:27 +01:00
John Wellbelove
390afc4d9d Added specialisations of etl::rotate for different iterator types 2024-05-13 13:45:27 +01:00
John Wellbelove
b42af2a829 Added GCD and LCM algorithms 2024-05-13 13:45:27 +01:00
John Wellbelove
f9867c2281 Added specialisations of etl::rotate for different iterator types 2024-05-13 13:45:27 +01:00
John Wellbelove
959b83ec22 Added ETL_NODISCARD, ETL_CONSTEXPR14 and ETL_NOEXCEPT 2024-05-13 13:45:27 +01:00
John Wellbelove
19a7518c2b Full constexpr for etl::array 2024-05-13 13:45:27 +01:00
John Wellbelove
76699fb27c Revert change #804 to restore value initialisation of type0 for default constructor 2024-04-26 17:48:22 +01:00
John Wellbelove
5ab69e3e97 Updated version and release notes 2024-04-24 13:11:33 +01:00
John Wellbelove
824c173414 Minor code format change 2024-04-24 13:10:26 +01:00
John Wellbelove
4ce524e43c #885 Bug: queue move-assignment is not compiling 2024-04-23 09:55:52 +01:00
John Wellbelove
3f9b990a72 #815 etl::remove_if calls predicate twice for first iterator, where predicate returns true. 2024-04-23 09:54:53 +01:00