1964 Commits

Author SHA1 Message Date
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