John Wellbelove
bdb8956e8d
Made construction from std::basic_string_view explicit
2024-12-19 14:31:44 +00:00
John Wellbelove
6ce4fa40bb
Added starts_with and ends_with to basic_string
2024-12-19 14:31:43 +00:00
John Wellbelove
7adf9adfcf
Removed std::string_view interface
...
Added contains member functions
2024-12-19 14:31:41 +00:00
John Wellbelove
9311819fa4
Fixed C++ standard compatibility issues
2024-12-19 14:31:40 +00:00
John Wellbelove
cbe4d5abe0
Added string_view API.
...
For all string types except _ext
2024-12-19 14:31:38 +00:00
John Wellbelove
b1c6489ac5
Added construction from std::basic_string_view
2024-12-19 14:31:37 +00:00
John Wellbelove
12b46728ab
Added string_view API.
...
Created common implementations for member algorithms.
2024-12-19 14:30:31 +00:00
John Wellbelove
05ed5ff77c
Change internal constants from all-caps snake case to initial-caps snake case
2024-12-19 14:30:30 +00:00
mike919192
21ab37f773
Add at method to span ( #975 )
...
* Update README.md
* Add at method to span
---------
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2024-12-19 14:30:27 +00:00
John Wellbelove
223f1cee6e
Fixed syntax issue between GCC and Clang/Visual Studio
2024-12-19 14:30:25 +00:00
John Wellbelove
0a41693271
Fixed syntax issue between GCC and Clang/Visual Studio
2024-12-19 14:30:24 +00:00
John Wellbelove
e4a6bc9c44
Fixed missing conditional macros around transparent comparator C++11 functions
2024-12-19 14:30:23 +00:00
John Wellbelove
54dc48de02
Changed comment
...
Simplified unit test
2024-12-19 14:30:18 +00:00
John Wellbelove
20989a187a
Added new C++17 function wrappers
...
etl::function_as_functor
etl::function_ptr_as_functor
etl::functor_as_static
etl::member_function_as_static
etl::member_function_as_functor
2024-12-19 14:30:16 +00:00
John Wellbelove
4a1712b733
#957 Support heterogenous lookup for maps
2024-12-19 14:30:14 +00:00
John Wellbelove
d0a9d696fe
Simplified definition of is_base_of
2024-12-19 14:30:13 +00:00
John Wellbelove
fd82a9c113
#959 Treat bitset with size_type
2024-12-19 14:30:11 +00:00
John Wellbelove
0026a8b908
#965 Fix accident creation of a delegate to an rvalue delegate when copying/assigning from delegate with mismatching signature
...
#966 A constructor for delegate with a freestanding function
2024-12-19 14:30:10 +00:00
John Wellbelove
ddef6a04ff
Fixed static definition
2024-12-19 14:30:09 +00:00
John Wellbelove
297b7e6786
Redefined ETL_DEPRECATED
2024-12-19 14:30:07 +00:00
John Wellbelove
748e2357f5
Updated nth_type to handle a type list of zero length
2024-12-19 14:30:06 +00:00
John Wellbelove
07333fd1dd
Updated release notes and version
2024-12-19 14:30:05 +00:00
ZachOB
6ea2388358
Fix build error in icircular_buffer::iterator and icircular_buffer::const_iterator ( #956 )
2024-12-19 14:30:03 +00:00
Aleksander Dejewski
602261ce39
Add contains() method to etl::unordered_map and etl::unordered_set ( #990 )
...
* Add contains() method to etl::unordered_map and etl::unordered_set
* Add contains() method to etl::unordered_multiset and etl::unordered_multimap
Use predefined variables in UT
Move contains() method to correct place in etl::unordered_set
* Fix contains() parameter type
2024-12-19 13:33:02 +00:00
John Wellbelove
a786f61860
Added additional transparent comparators to unordered containers
2024-12-17 17:10:48 +00:00
John Wellbelove
f9b2494ec9
Merge branch 'pull-request/#989-Packed-unaligned_type' into development
2024-12-16 14:58:57 +00:00
John Wellbelove
05682930e1
Make 'packed' have better cross platform functionality
2024-12-16 14:58:16 +00:00
rolandreichweinbmw
84eea5bb1f
Packed unaligned_type ( #989 )
...
This way, unaligned_types like etl::be_uint32_t can be used in places where POD types are expected.
2024-12-14 21:36:15 +00:00
John Wellbelove
d6f7d2890d
Changed etl::mem_cast to support bidirectional iterators
2024-12-14 20:10:33 +00:00
John Wellbelove
9cdef8e399
Added return reference from stack::emplace
2024-12-12 19:42:54 +00:00
rolandreichweinbmw
2a77222b2c
Return reference from emplace() in etl::queue ( #992 )
2024-12-12 19:04:40 +00:00
John Wellbelove
aa7af8b62b
Merge branch 'pull-request/#985-Add-uncopyable.h-class-uncopyable' into development
2024-12-12 18:51:53 +00:00
John Wellbelove
70da0eea06
Added uncopyable to VS2022 project and syntax-check scripts
2024-12-12 18:15:31 +00:00
rolandreichweinbmw
0ecab77151
Add uncopyable.h, class uncopyable ( #985 )
...
* Add uncopyable.h, class uncopyable
* Added destructor and unit tests for etl::uncopyable
2024-12-10 16:23:54 +00:00
John Wellbelove
978aa3f08a
Added constexpr
2024-12-10 11:25:54 +00:00
rolandreichweinbmw
4f96a8424d
Added const iterators to span ( #986 )
2024-12-04 10:17:32 +00:00
John Wellbelove
3a5b552c82
Merge branch 'pull-request/#982-Added-return-to-etl-optional-emplace-fixed-typo' into development
2024-12-02 12:29:01 +00:00
rolandreichweinbmw
b58ba95e60
Added return to etl::optional emplace, fixed typo ( #982 )
2024-12-02 12:10:26 +00:00
John Wellbelove
1b76d93069
Fixed merge issues
2024-11-30 11:19:43 +00:00
John Wellbelove
f2099b5403
Merge branch 'feature/#962-Request--allow-(overload)-string-append-a-string_view' into development
...
# Conflicts:
# include/etl/basic_string.h
2024-11-30 09:40:28 +00:00
John Wellbelove
ec3d20695b
Fixed shadowing warnings
2024-11-27 16:36:35 +00:00
John Wellbelove
2b0690928f
Fixed possible null dereference for etl::multi_span operator ->
2024-11-27 16:36:00 +00:00
John Wellbelove
c53ef6758a
Added string_view API.
...
Created common implementations for member algorithms.
2024-11-24 15:19:12 +00:00
John Wellbelove
67ed9e8e44
Change internal constants from all-caps snake case to initial-caps snake case
2024-11-24 15:19:11 +00:00
John Wellbelove
705b6b1bae
Added contains member function to string_view
2024-11-24 15:01:38 +00:00
John Wellbelove
f566076f42
Added member function resize_and_overwrite
2024-11-24 09:03:48 +00:00
John Wellbelove
89123357a6
Removed remaining std::u8string_view functions
2024-11-24 08:55:22 +00:00
John Wellbelove
75f7292447
Made construction from std::basic_string_view explicit
2024-11-24 08:53:51 +00:00
John Wellbelove
d5cd9567cd
Added starts_with and ends_with to basic_string
2024-11-23 12:33:36 +00:00
John Wellbelove
a3b40b667a
Removed std::string_view interface
...
Added contains member functions
2024-11-23 10:47:41 +00:00
John Wellbelove
bc44bf7a46
Fixed C++ standard compatibility issues
2024-11-22 12:25:02 +00:00
John Wellbelove
6559615242
Added string_view API.
...
For all string types except _ext
2024-11-20 09:51:02 +00:00
John Wellbelove
f5e8a5400e
Added construction from std::basic_string_view
2024-11-18 20:20:53 +00:00
John Wellbelove
e8fcace1cb
Added string_view API.
...
Created common implementations for member algorithms.
2024-11-16 14:05:14 +00:00
John Wellbelove
5828ba05c9
Change internal constants from all-caps snake case to initial-caps snake case
2024-11-16 14:05:12 +00:00
mike919192
f5eab49208
Add at method to span ( #975 )
...
* Update README.md
* Add at method to span
---------
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2024-11-13 21:26:04 +00:00
John Wellbelove
7f66536183
Fixed syntax issue between GCC and Clang/Visual Studio
2024-11-11 13:24:21 +00:00
John Wellbelove
d3ba653e37
Fixed syntax issue between GCC and Clang/Visual Studio
2024-11-11 13:20:47 +00:00
John Wellbelove
27492b4562
Fixed missing conditional macros around transparent comparator C++11 functions
2024-11-11 13:19:59 +00:00
John Wellbelove
5b01a4b4e5
Changed comment
...
Simplified unit test
2024-11-10 18:00:45 +00:00
John Wellbelove
ad69fb256d
Added new C++17 function wrappers
...
etl::function_as_functor
etl::function_ptr_as_functor
etl::functor_as_static
etl::member_function_as_static
etl::member_function_as_functor
2024-11-10 18:00:10 +00:00
John Wellbelove
c954c696bb
#957 Support heterogenous lookup for maps
2024-11-10 18:00:08 +00:00
John Wellbelove
bce35c4927
Simplified definition of is_base_of
2024-11-10 18:00:06 +00:00
John Wellbelove
36a5b4ba16
#959 Treat bitset with size_type
2024-11-10 18:00:05 +00:00
John Wellbelove
4b7997ae17
#965 Fix accident creation of a delegate to an rvalue delegate when copying/assigning from delegate with mismatching signature
...
#966 A constructor for delegate with a freestanding function
2024-11-10 18:00:03 +00:00
John Wellbelove
586ae0cdff
Fixed static definition
2024-11-10 18:00:01 +00:00
John Wellbelove
907d38f728
Redefined ETL_DEPRECATED
2024-11-10 18:00:00 +00:00
John Wellbelove
0dbbc4ba57
Updated nth_type to handle a type list of zero length
2024-11-10 17:59:58 +00:00
John Wellbelove
4071b17372
Updated release notes and version
2024-09-18 20:37:15 +01:00
ZachOB
484080b88e
Fix build error in icircular_buffer::iterator and icircular_buffer::const_iterator ( #956 )
2024-09-18 17:36:46 +01:00
schemborerik
77ab40a72f
For GCC10, we should check __cplusplus >= 201709L when determining if c++20 is supported ( #949 )
2024-08-31 11:56:32 +01:00
John Wellbelove
f3ad597e75
Merge branch 'development' of https://github.com/ETLCPP/etl into development
2024-08-31 11:06:47 +01:00
John Wellbelove
46012576d1
Merge branch 'hotfix/#948-Bug-in-queue-pop-can-break-queue.empty()' into development
2024-08-31 09:42:44 +01:00
John Wellbelove
3612390888
#948 Bug in queue pop can break queue.empty()
2024-08-31 09:40:46 +01:00
John Wellbelove
f77d91d544
Updated syntax checks
2024-08-21 18:48:56 +01:00
John Wellbelove
af9b3deade
Added the option of more logical ordering for template parameters for compile time member functions
2024-08-11 12:13:46 +01:00
John Wellbelove
e6653d3677
Added ETL_CONSTEXPR14 to etl::reverse
2024-08-10 11:12:24 +01:00
John Wellbelove
af03b44d2a
Fixed floating point support for etl::unaligned_type
2024-08-09 21:36:58 +01:00
John Wellbelove
3f018ee1a7
Fixed floating point etl::unaligned_type
2024-08-08 22:58:22 +01:00
David Hebbeker
527359f535
Make include paths to private files relative ( #946 )
...
* Render include paths relative
By removing `etl/` from include paths (in `#include` statements), the path to the directory `include/` doesn't need to be provided to the preprocessor as an include path if the files in `include/etl/` are included by other means.
This has no disadvantages.
Actually the form `#include "..."` is intended to be used for relative paths in the first place.
This is relevant if one wants to include the source files from `include/etl` only indirectly.
For example we use special generated header files which wrap the include statement of the vanilla header files with diagnostic commands.
Those commands allow to disable diagnostic for ETL's files and re-enable them after the file inclusion.
Wrapper files are generated for every non-private header file.
We provide the directory with the wrapper files as include path to the preprocessor instead of the normal `include/` directory.
Thus include statements like `#include "etl/private/..."` are invalid in that case.
* Remove "etl/" from include paths in all files in `include/`.
33 findings in 4 files of 375.
See 936961949172bca5ba1418054a055e05ecb6d1d4 for explanation.
2024-08-08 07:18:17 +01:00
John Wellbelove
16cd116055
Updated version and release notes
2024-08-07 20:42:10 +01:00
John Wellbelove
81751db03e
Removed C++11 restriction on etl::observer::notification
2024-08-07 15:45:57 +01:00
John Wellbelove
b38194cec4
Removed EmbeddedTemplateLibrary-20.39.0.tar.gz from project.
2024-08-07 12:25:44 +01:00
John Wellbelove
c5a6f9b5b4
#942 Warning on pragma c++20-compat
2024-08-06 19:38:58 +01:00
John Wellbelove
f7c79526f3
Fix for has_duplicates with one template parameter
2024-08-02 10:43:39 +01:00
John Wellbelove
73395fe6f4
Updated C++03 observer class to accept void parameter notification types
2024-08-02 10:36:13 +01:00
John Wellbelove
f219e86806
Added etl::count_of, etl::has_duplicates, etl::has_duplicates_of
2024-08-02 10:35:29 +01:00
John Wellbelove
c61f493a01
Added observer<void> as a specialisation for C++03 code
2024-08-01 13:29:52 +01:00
John Wellbelove
614ed6bf05
Fixed brace syntax
2024-07-31 10:51:41 +01:00
Boris Gromov
f01edbc5c4
Fix histogram indexing when accessed via operator [] ( #939 )
2024-07-31 09:04:45 +01:00
Drew Rife
211b8c2e90
fix: determine legacy variant after determining compiler version ( #938 )
2024-07-30 19:36:46 +01:00
John Wellbelove
b3cba2f256
Merge branch 'pull-request/#935-added-20-bit-integral-limits' into development
...
# Conflicts:
# support/Release notes.txt
2024-07-30 14:48:44 +01:00
John Wellbelove
75f2e7b392
Added support for 20bit types for integral_limits
2024-07-30 14:46:50 +01:00
ReneCanadian
bf56dcf074
added 20 bit integral limits ( #935 )
2024-07-30 13:54:40 +01:00
John Wellbelove
7d4e4e93fd
Fixed unused parameter warning
2024-07-30 13:35:30 +01:00
John Wellbelove
9b8c7780a4
Fixed legacy variant macro
2024-07-30 13:35:08 +01:00
John Wellbelove
b6801b5c0c
Added observer specialisation for void notification parameter type
2024-07-30 13:33:58 +01:00
John Wellbelove
37b46c4f64
Updated release notes and version
2024-07-28 17:57:35 +01:00
John Wellbelove
0b8b057a75
Fixed rebase duplication
2024-07-28 17:04:47 +01:00
John Wellbelove
b85cc276b3
Refactored etl::io_port classes
...
Added binary operators
Modified the way iterators are handled.
2024-07-28 16:51:02 +01:00
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
Michael K
744d54c1fd
Fix doc comment for pool::allocate() ( #914 )
2024-07-14 18:42:02 +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