1356 Commits

Author SHA1 Message Date
Jeremy Overesch
beadf9e898 Remove unnecessary casts that causes warnings. (#461) 2021-11-15 09:31:30 +00:00
John Wellbelove
29d711003f Added non-const string pointer overload 2021-11-15 09:31:30 +00:00
John Wellbelove
f459c3e190 First experiments 2021-11-15 09:31:30 +00:00
Jeremy Overesch
331e44b0ac Change != to < in ipool to get rid of erroneous clang-tidy nullptr dereference warning (#457) 2021-11-15 09:31:30 +00:00
Steffen Zimmermann
c412277bb9 add ifdef guard for msvc pragma (#455)
There was a msvc specific pragma to disable a warning which causes compiler warnings for non-msvc compilers.
Additionally added a push/pop paradigm to restore the original warning state correctly.
2021-11-15 09:31:29 +00:00
mhx
fccebd4724 Fix constexpr accepts() implementation to be C++11 compliant (#452)
In C++11, `constexpr` functions must not contain compound statements.
This change makes the implementation of `message_packet::accepts` use
a single conjunction instead of a `switch` statement.

See https://gcc.godbolt.org/z/zKbsx3nY5.

Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2021-11-15 09:31:29 +00:00
mhx
0759d3f2ee Fix constexpr accepts() implementation to be C++11 compliant (#451)
In C++11, `constexpr` functions must not contain compound statements.
This change makes the implementation of `message_packet::accepts` use
a single conjunction instead of a `switch` statement.

See https://gcc.godbolt.org/z/zKbsx3nY5.
2021-11-15 09:31:29 +00:00
John Wellbelove
36bb393d7a Fix compiler warnings 2021-11-15 09:31:29 +00:00
Jeremy Overesch
c70db16a20
Remove unnecessary casts that causes warnings. (#461) 2021-11-10 17:31:31 +00:00
John Wellbelove
1b7a59be92 Added non-const string pointer overload 2021-11-06 16:45:06 +00:00
Jeremy Overesch
2c42e9f91b Change != to < in ipool to get rid of erroneous clang-tidy nullptr dereference warning (#457) 2021-11-04 12:15:54 +01:00
John Wellbelove
dd77b4ec70 First experiments 2021-11-04 12:15:14 +01:00
Steffen Zimmermann
4068482bd5
add ifdef guard for msvc pragma (#455)
There was a msvc specific pragma to disable a warning which causes compiler warnings for non-msvc compilers.
Additionally added a push/pop paradigm to restore the original warning state correctly.
2021-10-29 12:16:26 +01:00
John Wellbelove
9c8bf85e8d Merge branch 'hotfix/fix-cpp11-pedantic-constexpr' into development 2021-10-27 10:43:49 +01:00
John Wellbelove
946b48cbf1 Merge branch 'hotfix/#454-fix-compiler-error-msvc-16' into development 2021-10-27 09:48:13 +01:00
John Wellbelove
ea11ee8818 Fix compiler warnings 2021-10-27 09:47:52 +01:00
John Wellbelove
e6dd894896 Experimental automatic builtins for algorithms 2021-10-26 17:27:05 +01:00
John Wellbelove
b292e58ee4 Experimental automatic builtins for algorithms 2021-10-25 14:01:07 +01:00
mhx
b4c4d8ac4a
Fix constexpr accepts() implementation to be C++11 compliant (#452)
In C++11, `constexpr` functions must not contain compound statements.
This change makes the implementation of `message_packet::accepts` use
a single conjunction instead of a `switch` statement.

See https://gcc.godbolt.org/z/zKbsx3nY5.

Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2021-10-25 13:46:00 +01:00
John Wellbelove
76f2a97d87 Experimental automatic builtins for algorithms 2021-10-25 09:56:40 +01:00
mhx
efb9c04a45
Fix constexpr accepts() implementation to be C++11 compliant (#451)
In C++11, `constexpr` functions must not contain compound statements.
This change makes the implementation of `message_packet::accepts` use
a single conjunction instead of a `switch` statement.

See https://gcc.godbolt.org/z/zKbsx3nY5.
2021-10-22 19:11:47 +01:00
John Wellbelove
690044e7ff constexpr for etl::string_view 2021-10-21 09:31:49 +01:00
John Wellbelove
998322d02c Add available_bytes to byte_stream_reader & byte_stream_writer 2021-10-21 09:26:20 +01:00
John Wellbelove
7124b86b88 Merge branch 'hotfix/disable-begin-end-size-for-no-stl' into development 2021-10-20 13:35:08 +01:00
John Wellbelove
f3bf0dc7fe Disable etl::begin(), etl::end() and etl::size() for ETL_NO_STL 2021-10-20 13:34:44 +01:00
John Wellbelove
4bedc041d4 Various updates 2021-10-12 17:52:51 +01:00
John Wellbelove
9e6baeb758 Merge branch 'feature/updates-to-delegate' into development 2021-10-12 16:28:41 +01:00
John Wellbelove
fbda92f67f Replace constexpr with ETL_CONSTEXPR in etl::delegate 2021-10-12 15:57:41 +01:00
Sergey Skorokhod
0ca5f274e1
missed 'typename' keyword added (#445)
Co-authored-by: Sergey Skorokhod <s.skorokhod@1440.space>
2021-10-12 15:37:44 +01:00
John Wellbelove
6af5a0bbd2 Added missing explicit initialisation from in_place structures. 2021-10-12 14:56:01 +01:00
Steffen Zimmermann
bc095c9993 fix PARAMETER_HIDDEN (#444)
found with Coverity static code analyzer:
declaration hides parameter "pbucket" (declared in line 1404)
2021-10-12 14:56:01 +01:00
John Wellbelove
dc34be793e Added missing explicit initialisation from in_place structures. 2021-10-12 14:51:39 +01:00
Steffen Zimmermann
7968c5c448
fix PARAMETER_HIDDEN (#444)
found with Coverity static code analyzer:
declaration hides parameter "pbucket" (declared in line 1404)
2021-10-12 10:16:55 +01:00
John Wellbelove
67067605a8 Updates to delegate 2021-10-11 12:32:17 +01:00
John Wellbelove
db46cc5dec Added set() member functions 2021-10-09 14:28:37 +01:00
John Wellbelove
0d612f1317 Added missing read() member functions in byte_stream_reader
Updated version numbers
2021-10-07 15:11:43 +01:00
John Wellbelove
2d64b77e4a Modified read_unchecked & write_unchecked
Added start/length read/write implementations
2021-10-05 14:24:46 +01:00
John Wellbelove
4e4c781e18 Updated versions 2021-10-04 20:00:45 +01:00
John Wellbelove
609c0c1ebc Merge branch 'feature/#430-add-peek-to-queue_spsc_atomic' into development
# Conflicts:
#	.gitignore
2021-10-04 17:30:55 +01:00
John Wellbelove
4b67f54f1f Added read_unchecked & write_unchecked 2021-10-04 16:59:42 +01:00
John Wellbelove
71f42a7563 Merge branch 'feature/#429-scatter-gather-span-based-class' into development
# Conflicts:
#	.gitignore
#	include/etl/byte_stream.h
#	test/vs2019/etl.vcxproj.filters
2021-10-03 20:26:20 +01:00
John Wellbelove
605655d58b Added multi_span iterator and tests 2021-10-03 20:19:15 +01:00
John Wellbelove
f35271e695 Added public access for base class for iterator 2021-10-03 20:18:51 +01:00
John Wellbelove
08e08b9165 Merge branch 'feature/#433-pool-ext-variant-pool-ext' into development
# Conflicts:
#	.gitignore
2021-10-03 16:10:28 +01:00
John Wellbelove
ec64141598 #438 void* reader writer API 2021-10-03 15:38:50 +01:00
John Wellbelove
aaa00ca610 Added pool_ext & generic_pool_ext 2021-10-03 11:50:40 +01:00
John Wellbelove
3f79e61f97 Add front() to locked queues 2021-10-02 14:27:23 +01:00
Daniel B
494059fd6b
Feature/pool ext variant pool ext (#433)
* added threads dependency to meson build because of pthread linkage problems (gcc version Debian 8.3.0-6)

* initial version of generic_pool_ext, pool_ext and variant_pool_ext (extended unit tests)

* format code

* fix test_call_if_and_not_valid_returning_void by moving SetupFixture into namespace (to ensure correct test setup)

Co-authored-by: Daniel B <daniel-brosche@users.noreply.github.com>
2021-10-01 18:46:52 +01:00
John Wellbelove
88f2ff8e63 Updated version numbers 2021-10-01 18:41:59 +01:00
John Wellbelove
ff3f62bc0b Fixed etl::cyclic_value for ARMCC v5 compatibility 2021-10-01 18:41:59 +01:00
John Wellbelove
c691991538 Removed warning from compilation 2021-10-01 18:41:35 +01:00
John Wellbelove
f987d2a287 Fixes to byte_stream_reader for const data 2021-10-01 18:41:35 +01:00
John Wellbelove
05f17e1d74 #428 byte_stream_reader can't be used to read a span of const data 2021-10-01 18:41:35 +01:00
John Wellbelove
579527a932 Fixes to byte_stream_reader for const data 2021-10-01 18:41:35 +01:00
fractalembedded
71c8544f35
Add peek to queue_spsc_atomic (#430) 2021-10-01 18:41:16 +01:00
John Wellbelove
817ae15c7a Work in progress 2021-10-01 14:10:14 +01:00
John Wellbelove
b47e58a8fe Merge branch 'hotfix/byte_stream_reader-with-const-char-data' into development 2021-09-29 18:50:01 +01:00
John Wellbelove
2fd15f9f68 Fixes to byte_stream_reader for const data 2021-09-29 18:49:27 +01:00
John Wellbelove
b9b7b9cd7a #431 CMSIS-RTOS2 support 2021-09-28 18:06:30 +01:00
John Wellbelove
a6d8a6d1ef Updated version numbers 2021-09-27 14:06:47 +01:00
John Wellbelove
1b0ddc540e Fixed etl::cyclic_value for ARMCC v5 compatibility 2021-09-27 13:30:59 +01:00
John Wellbelove
9f976d98b9 #428 byte_stream_reader can't be used to read a span of const data 2021-09-24 09:44:49 +01:00
John Wellbelove
49c9393537 Fixes to byte_stream_reader for const data 2021-09-23 11:49:16 +01:00
John Wellbelove
0754b3380e Updated versions 2021-09-21 11:09:34 +01:00
John Wellbelove
f2b4eef277 Temporarily disable multi_vector 2021-09-21 11:06:44 +01:00
John Wellbelove
acf0f06398 Merge branch 'hotfix/replace-std-size_t-with-size_t' into development 2021-09-21 10:20:17 +01:00
John Wellbelove
877f1a4d5d Replaced std::size_t with size_t 2021-09-21 10:19:52 +01:00
John Wellbelove
bdf1451655 Added multi_vector 2021-09-10 12:12:18 +01:00
John Wellbelove
5093189a7b Updated version numbers 2021-09-09 17:36:56 +01:00
John Wellbelove
c8cde6f605 Added successor handling for accepts
Added successor handling for pre-C++17 message router
2021-09-09 17:08:14 +01:00
John Wellbelove
7f6548e02b Added successor handling for accepts
Added successor handling for pre-C++17 message router
2021-09-09 16:07:51 +01:00
John Wellbelove
e6c13c75e7 Added result type 2021-09-05 17:39:56 +01:00
John Wellbelove
aaac4ba97c Updated version
Modified etl::result test
2021-09-05 14:59:17 +01:00
John Wellbelove
2cdfba4297 Added result type 2021-09-04 14:54:04 +01:00
John Wellbelove
81807b2fd2 Added result type 2021-09-04 13:34:02 +01:00
John Wellbelove
ee46d76548 Additional member functions 2021-09-02 16:07:09 +01:00
John Wellbelove
ca55664b67 Initial byte_stream code 2021-09-02 13:10:02 +01:00
John Wellbelove
3b112da068 Added call_if and call_or member functions. 2021-09-02 13:04:28 +01:00
John Wellbelove
dd19cb2e47 Working code including 64 bit 2021-09-02 13:04:27 +01:00
John Wellbelove
72468bace8 Pre-release code 2021-09-02 13:04:27 +01:00
John Wellbelove
07070085e8 Working code 2021-09-02 13:03:39 +01:00
John Wellbelove
d79b13bd52 Added missing #include for variant.
Updated version numbers
2021-09-02 13:03:38 +01:00
Benedek Kupper
a653a22dd9 to_string_helper: add string conversion helper for denominated integers (#408)
With default format it will only print the meaningful fractional digits.
If the format specifies the precision, it will print at least that many
fractional digits.

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>
2021-09-02 13:03:38 +01:00
John Wellbelove
442a76ec46 Fixed incomplete template specialisations in type_traits.h 2021-09-02 13:03:38 +01:00
CanastraRF
988db811c9 literal with suffix (#416) 2021-09-02 13:03:38 +01:00
John Wellbelove
c315efc623 Fix for etl::mutex::try_lock() for GCC 2021-09-02 13:03:37 +01:00
Dmitri Vorobyov
c497c5a4c7 fix try_lock in gcc mutex (#415) 2021-09-02 13:03:37 +01:00
John Wellbelove
46f4bb86d1 Successor handling for all derived message router types 2021-09-02 13:03:36 +01:00
John Wellbelove
17931057b5 Remove clang warning 2021-09-02 13:03:36 +01:00
John Wellbelove
3831d4fd68 Added successor call to receive() 2021-09-02 13:03:36 +01:00
John Wellbelove
6fb9357b7c Added cbegin() & cend() 2021-08-24 12:12:19 +01:00
John Wellbelove
5cbe4fb3e1 Read write span ranges 2021-08-22 12:58:32 +01:00
John Wellbelove
26c89064fc Additional read/write functions 2021-08-22 10:13:53 +01:00
John Wellbelove
133ff78330 Added templated etl::write & etl::read functions for byte stream 2021-08-21 09:54:31 +01:00
John Wellbelove
c3e040949a Span access is only for sizeof(T) == 1 2021-08-21 00:18:54 +01:00
John Wellbelove
42d451dc79 Expanded tests and updated make lists 2021-08-20 19:39:49 +01:00
John Wellbelove
ed74f8bc54 Initial byte_stream code 2021-08-20 10:22:44 +01:00
John Wellbelove
c1e4c5b670 Initial byte_stream code 2021-08-18 13:01:46 +01:00
John Wellbelove
fa4536eabf Merge branch 'development' 2021-08-13 20:45:49 +01:00
John Wellbelove
a10dfd433a Issue #413 Queue's pop_into copies rather than moves 2021-08-13 19:21:48 +01:00
John Wellbelove
c3e44778e6 Merge branch 'development'
# Conflicts:
#	support/Release notes.txt
2021-08-13 17:07:05 +01:00
John Wellbelove
417c3b9e77 Expanded compiled variants for scripts 2021-08-13 16:32:43 +01:00
John Wellbelove
21e114c252 Fixed etl::fsm C++03 template definition that was corrupted in 20.10.0
Fixed meson.build
2021-08-12 10:50:24 +01:00
John Wellbelove
6ff560a416 Merge branch 'feature/variadic-message-router' into development
# Conflicts:
#	.gitignore
#	include/etl/bip_buffer_spsc_atomic.h
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
#	test/etl_profile.h
#	test/runsanitychecks.sh
#	test/runtests.sh
#	test/vs2019/etl.vcxproj.filters
2021-08-11 15:50:43 +01:00
John Wellbelove
988cd95440 Added C++17 variadic versions of etl::message_router ans etl::fsm
Fixed meson.build
2021-08-11 15:48:17 +01:00
John Wellbelove
5904687e6d Variadic FSM 2021-08-10 20:25:27 +01:00
John Wellbelove
774384e316 Fixes after merge 2021-08-10 12:37:33 +01:00
John Wellbelove
27f5204032 Added 'Force C++03' macro 2021-08-10 11:31:14 +01:00
John Wellbelove
f413fd1a21 Fixes after merge 2021-08-10 11:20:00 +01:00
John Wellbelove
ca322551f3 Variadic message_packet 2021-08-10 10:49:32 +01:00
John Wellbelove
ecff863087 notify_observers() takes universal reference for C++11 and above 2021-08-10 10:49:11 +01:00
John Wellbelove
a7786e08af Updated type traits generator 2021-08-10 10:49:11 +01:00
John Wellbelove
79ffe63b1c Refactoring of type traits for GCC compatibility 2021-08-10 10:49:10 +01:00
John Wellbelove
8181cec767 Updated version numbers 2021-08-10 10:49:10 +01:00
Benedek Kupper
3363da4f91 Feature/bip buffer spsc atomic (#402 follow-up) (#404)
* bip_buffer_spsc_atomic: fix compiler failure

The previous commit changed the pointer being const (cannot change where
the pointer is pointing after construction) to the referred data
to be const (the buffer itself is not writeable), which causes compiler
issue with the tests.

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>

* bip_buffer_spsc_atomic: whitespace cleanup for consistency

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>

* bip_buffer_spsc_atomic: clear() destroys the unread data

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>

* bip_buffer_spsc_atomic: add destructor

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>
2021-08-10 10:38:23 +01:00
John Wellbelove
1789e4937d Changes before merging to development 2021-08-10 10:38:23 +01:00
Benedek Kupper
7a067ba816 introduce bip buffer spsc atomic (#402)
Based on the works of Andrea Lattuada and James Munns:
https://blog.systems.ethz.ch/blog/2019/the-design-and-implementation-of-a-lock-free-ring-buffer-with-contiguous-reservations.html
Whose design was inspired by Simon Cooke:
https://www.codeproject.com/Articles/3479/The-Bip-Buffer-The-Circular-Buffer-with-a-Twist

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>
2021-08-10 10:38:22 +01:00
John Wellbelove
d40a67776f notify_observers() takes universal reference for C++11 and above 2021-08-05 16:52:35 +01:00
John Wellbelove
c265e82bbe Updated type traits generator 2021-08-05 09:23:02 +01:00
John Wellbelove
b779696eb9 Refactoring of type traits for GCC compatibility 2021-08-04 18:47:42 +01:00
John Wellbelove
026a365f8e Updated version numbers 2021-08-04 10:27:22 +01:00
John Wellbelove
0d5f30b97e Merge branch 'master' into feature/bip-buffer-spsc-atomic
# Conflicts:
#	test/vs2019/etl.vcxproj.filters
2021-08-02 12:22:01 +01:00
John Wellbelove
86d1bd7890 etl::message_packet update 2021-08-01 20:01:30 +01:00
John Wellbelove
c868acaa9b Updated versions 2021-08-01 20:01:30 +01:00
John Wellbelove
a0c18c56af Changed std::forward to etl::forward 2021-08-01 20:01:29 +01:00
John Wellbelove
78239ec2ef Updated versions 2021-08-01 19:39:14 +01:00
John Wellbelove
c1f7edeee6 Changed std::forward to etl::forward 2021-08-01 19:37:03 +01:00
John Wellbelove
e92f93b57f Variadic message_packet 2021-07-31 10:38:21 +01:00
John Wellbelove
35ac4cb239 Variadic message_packet 2021-07-29 17:20:40 +01:00
John Wellbelove
b886ee381b Updated version numbers 2021-07-29 14:29:00 +01:00
John Wellbelove
734f14a8ec Changed variant files names 2021-07-29 14:29:00 +01:00
John Wellbelove
2c11956311 Updated version numbers 2021-07-29 14:27:41 +01:00
John Wellbelove
031b3e7eda Changed variant files names 2021-07-29 14:15:49 +01:00
John Wellbelove
fd89f51621 Type traits refactor 2021-07-29 11:34:16 +01:00
John Wellbelove
1702a6e043 Type traits refactor 2021-07-27 18:17:42 +01:00
John Wellbelove
8f570d81cd Work in progress 2021-07-26 09:29:11 +01:00
John Wellbelove
017095bef3 Merge branch 'master' into development
# Conflicts:
#	support/Release notes.txt
#	test/vs2019/etl.vcxproj.filters
2021-07-23 13:48:52 +01:00
John Wellbelove
23b8ffcd20 updated version numbers 2021-07-23 13:39:24 +01:00
John Wellbelove
7a061a43cd Altered 'unhandled' delegate to tbe the last in the array for the constexpr vspecialisation. 2021-07-23 12:50:17 +01:00
John Wellbelove
d49c2d28e0 Added compile time constexpr initialisation 2021-07-23 10:21:11 +01:00
John Wellbelove
cee880b2e6 Changed 'class' to 'typename'. 2021-07-19 12:51:54 +01:00
John Wellbelove
140c69e6ea Updated version numbers 2021-07-18 20:22:12 +01:00
John Wellbelove
a7420267a6 Cross compiler compatibity changes 2021-07-18 09:53:13 +01:00
John Wellbelove
e9a9e8d1af Merge branch 'feature/variadic-variant' into development
# Conflicts:
#	.gitignore
#	arduino/examples/Vector_Examples/Example_Vector_1_simple_use/Example_Vector_1_simple_use.ino
#	include/etl/version.h
#	library.json
#	library.properties
#	meson.build
#	support/Release notes.txt
#	test/vs2019/etl.vcxproj.filters
2021-07-17 23:51:16 +01:00
John Wellbelove
aa98a60822 etl::variant release candidate 2021-07-17 23:45:28 +01:00
John Wellbelove
7b63b567b6 Fixes for cross compiler cmpatibility
Added tests for all get<>() functions
2021-07-16 22:21:42 +01:00
Benedek Kupper
ed0dbc00c2
Feature/bip buffer spsc atomic (#402 follow-up) (#404)
* bip_buffer_spsc_atomic: fix compiler failure

The previous commit changed the pointer being const (cannot change where
the pointer is pointing after construction) to the referred data
to be const (the buffer itself is not writeable), which causes compiler
issue with the tests.

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>

* bip_buffer_spsc_atomic: whitespace cleanup for consistency

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>

* bip_buffer_spsc_atomic: clear() destroys the unread data

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>

* bip_buffer_spsc_atomic: add destructor

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>
2021-07-16 11:42:35 +01:00
John Wellbelove
9c68847c5c Compiler compatibility changes 2021-07-15 12:57:46 +01:00
John Wellbelove
de1a19775e Re-enabled all variant unit tests 2021-07-14 12:37:24 +01:00
John Wellbelove
0bdd5943da Work in progress 2021-07-13 21:24:12 +01:00
John Wellbelove
56c75a3ae5 Refactored operation functions into one. 2021-07-13 19:57:24 +01:00
John Wellbelove
109997b8d6 Work in progress 2021-07-13 17:15:25 +01:00
John Wellbelove
590b26e513 Added conjunction and disjunction 2021-07-12 16:26:50 +01:00
John Wellbelove
197f65c5da Compiler compatibility updates 2021-07-12 00:51:53 +01:00
John Wellbelove
c54bf63a76 Resolved issues with universal references in construction and assignment.
Added 'in_place' structures.
Added etl::overload.
Updated sanity check cmake files.
Added alignment for const void.
2021-07-11 20:36:01 +01:00
John Wellbelove
d13bf7d5df Changes before merging to development 2021-07-06 18:49:27 +01:00
Benedek Kupper
acf4945023
introduce bip buffer spsc atomic (#402)
Based on the works of Andrea Lattuada and James Munns:
https://blog.systems.ethz.ch/blog/2019/the-design-and-implementation-of-a-lock-free-ring-buffer-with-contiguous-reservations.html
Whose design was inspired by Simon Cooke:
https://www.codeproject.com/Articles/3479/The-Bip-Buffer-The-Circular-Buffer-with-a-Twist

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>
2021-07-06 15:42:37 +01:00
John Wellbelove
7bb438bf1b Added the option to derive etl::message<> from a custom parent class 2021-06-30 20:57:42 +01:00
Manuel Seeböck
38d8452e70
added optional template parameter to etl::imessage to specify a base class other than imessage (#401)
Co-authored-by: Manuel Seeböck <seeboeck@pjm.co.at>
2021-06-30 13:33:05 +01:00
John Wellbelove
ef6885c02c Unified vector asserts 2021-06-30 11:25:37 +01:00
John Wellbelove
7e9ca31fb1 Updated overloads 2021-06-29 20:04:18 +01:00
John Wellbelove
e8a6e12ca1 Renamed mem_type to mem_cast 2021-06-29 20:03:55 +01:00
John Wellbelove
eb6d5637d4 Added experimental uni_type 2021-06-29 20:03:55 +01:00
John Wellbelove
f956cc19b4 Renamed mem_type to mem_cast 2021-06-29 20:03:31 +01:00
John Wellbelove
67b17b2635 Added experimental uni_type 2021-06-29 20:02:32 +01:00
John Wellbelove
f0358764c8 Updated Arduino examples 2021-06-29 19:59:09 +01:00
John Wellbelove
6f3caa6ede C++20 compatibility for deprecated std::is_pod 2021-06-29 19:58:30 +01:00
John Wellbelove
dee32492bd Deleted experimental files 2021-06-29 19:58:30 +01:00
John Wellbelove
0d7405de0d Fixed swapped HUGE_VAL & HUGE_VALF definitions 2021-06-29 19:58:30 +01:00
John Wellbelove
7933e146fc Updated Arduino examples 2021-06-29 19:15:07 +01:00
John Wellbelove
aed7417bae C++20 compatibility for deprecated std::is_pod 2021-06-24 20:38:57 +01:00
John Wellbelove
b1aa00df47 Deleted experimental files 2021-06-24 18:14:25 +01:00
John Wellbelove
49630a58c8 Fixed swapped HUGE_VAL & HUGE_VALF definitions 2021-06-22 20:32:57 +01:00
John Wellbelove
2025e6ff9b Latest updates 2021-06-22 14:18:26 +01:00
John Wellbelove
4a9f70cd0c Renamed mem_type to mem_cast 2021-06-22 14:18:02 +01:00
John Wellbelove
c5fba8fd45 Added experimental uni_type 2021-06-22 14:17:10 +01:00
John Wellbelove
2ef35caa77 Added experimental uni_type 2021-06-22 14:16:49 +01:00
John Wellbelove
36db54dd67 Updated version numbers 2021-06-22 14:13:20 +01:00
John Wellbelove
622eaa4434 Fixed copy and move assignment bug 2021-06-22 14:13:20 +01:00
John Wellbelove
f0f0500c94 Define missing macro when cross compiling with clang 2021-06-22 14:13:19 +01:00
John Wellbelove
5dd5bc3aac Define missing macro when cross compiling with clang 2021-06-22 14:13:19 +01:00
T
32d80e91e7 Add support to cross-compile with clang (#389)
Clang does not define __WCHAR_MIN__ however, limits.h relies on it.
By using the __AVR__ macro we can define __WCHAR_MIN__ only when
cross-compiling with clang.
2021-06-22 14:13:19 +01:00
John Wellbelove
b1f771f6b4 Updated version numbers 2021-06-22 12:04:28 +01:00
John Wellbelove
60b04b55f6 Fixed copy and move assignment bug 2021-06-22 11:00:42 +01:00
John Wellbelove
e090f1a18c Define missing macro when cross compiling with clang 2021-06-18 14:38:12 +01:00
John Wellbelove
1a4e58d028 Define missing macro when cross compiling with clang 2021-06-18 14:15:44 +01:00
T
a32fa10329
Add support to cross-compile with clang (#389)
Clang does not define __WCHAR_MIN__ however, limits.h relies on it.
By using the __AVR__ macro we can define __WCHAR_MIN__ only when
cross-compiling with clang.
2021-06-18 12:52:34 +01:00
John Wellbelove
2e0c2a4099 Merge branch 'master' into feature/variadic-variant 2021-06-17 13:45:57 +01:00
John Wellbelove
6a1ce235dc etl::basic_string::copy is now const and does not affect the 'truncated' flag. 2021-06-17 13:02:59 +01:00
John Wellbelove
e44efd75a7 etl::basic_string::copy is now const and does not affect the 'truncated' flag. 2021-06-17 12:01:04 +01:00
John Wellbelove
afabc049b7 Merge branch 'master' into feature/variadic-variant
# Conflicts:
#	include/etl/mem_cast.h
#	test/test_mem_cast.cpp
#	test/test_mem_cast_ptr.cpp
#	test/vs2019/etl.vcxproj
#	test/vs2019/etl.vcxproj.filters
2021-06-14 18:24:59 +01:00
John Wellbelove
6f0b0a9809 Updated version numbers 2021-06-14 14:31:55 +01:00
John Wellbelove
892529b0f2 Merge branch 'feature/mem_cast' into development 2021-06-14 14:20:38 +01:00
John Wellbelove
1781be7702 Fixed ambiguous function call for clang 2021-06-14 13:23:41 +01:00
John Wellbelove
e4e61cfe69 Fixed ambiguous function call for clang 2021-06-14 13:11:03 +01:00
John Wellbelove
0a7a131a43 Updated version numbers 2021-06-12 11:48:27 +01:00
John Wellbelove
fb54f23e5d Latest updates 2021-06-12 11:43:32 +01:00
Jonathan
7212856424 Change debounce state tables to be defined as constant. (#386)
Currently these state tables are being defined in the data section of RAM. As these tables are unchanged, this change allows them to be placed in the text section instead. As they are function local objects, they also get lazy initialized causing references to the dynamic shared object which are unnecessary.
2021-06-10 10:13:06 +01:00
John Wellbelove
2b2a542aa1 Added more static asserts for alignment 2021-06-03 20:45:36 +01:00
John Wellbelove
a2aa6b26c3 Changed comments 2021-06-03 11:44:38 +01:00
John Wellbelove
208d0c4a26 Added/adjusted 'force C++03' unit test macros 2021-06-03 10:56:08 +01:00
John Wellbelove
e2eb6e8650 Added ETL_ASSERT_AND_RETURN and ETL_ASSERT_AND_RETURN_VALUE error macros 2021-06-02 21:34:48 +01:00
John Wellbelove
177c4d1e79 Added 'at_offset' functions.
Changed size for mem_cast_ptr from template parameter fo member variable.
2021-06-02 21:33:08 +01:00
John Wellbelove
e21d3edd6a Initial commit 2021-05-31 15:55:13 +01:00
John Wellbelove
b19471dc8a Updates to mem_cast 2021-05-31 10:00:01 +01:00
John Wellbelove
8af219c0b3 Updates to mem_cast 2021-05-30 12:08:03 +01:00
John Wellbelove
abf8d7bb14 Renamed mem_type to mem_cast 2021-05-27 13:23:15 +01:00
John Wellbelove
a5f6d9f033 Further updates to mem_type 2021-05-27 10:41:20 +01:00
John Wellbelove
380fc59b2b Further updates to mem_type 2021-05-26 22:04:34 +01:00
John Wellbelove
d8777dc2f6 Further updates to mem_type 2021-05-26 11:09:02 +01:00
John Wellbelove
ab7fcbee64 Added experimental uni_type 2021-05-25 23:06:15 +01:00
John Wellbelove
3cbd432a29 Added experimental uni_type 2021-05-25 11:47:25 +01:00
John Wellbelove
84e1241c39 Added experimental uni_type 2021-05-25 11:02:24 +01:00
John Wellbelove
830d0d00f1 Updated QueuedMessageRouter and QueuedFSM examples to use current message frameworks. 2021-05-24 20:08:56 +01:00
John Wellbelove
67c19bb0dc Fold expression experiment 2021-05-23 20:37:29 +01:00
John Wellbelove
f4060bc9ea Working. No move functionality. 2021-05-23 16:59:10 +01:00
John Wellbelove
34479a3e31 Working. No move functionality. 2021-05-23 16:10:58 +01:00
John Wellbelove
92515111d9 Interim commit 2021-05-22 20:28:40 +01:00
John Wellbelove
c3bef2c493 Interim commit 2021-05-22 17:11:48 +01:00
John Wellbelove
820bc36aa6 Initial commit 2021-05-21 18:05:02 +01:00
Martino Pilia
42546176a9
Fix uninitialised warning in etl::optional (#381)
The constructors of etl::optional with no argument or with etl::nullopt_t
argument do not initalise the storage data member. When compiling with
gcc with some specific optimisation levels, this can generate a
-Wmaybe-uninitialized diagnostic warning.
2021-05-21 17:17:43 +01:00
John Wellbelove
fc6609276c Added container_type to etl::stack, etl::queue and etl::priority_queue. 2021-05-20 20:54:01 +01:00
Daníel Grétarsson
9c2b5c3d75
Add container_type type definition to etl::queue to better match std::queue (#378)
* Add container_type type definition to better match std::queue

* Add container_type typedef to priority_queue and stack classes to maximize compatibility with the std library
2021-05-20 09:14:31 +01:00
John Wellbelove
f131356dc2 Fixed cross compiler compatibility for etl::circular_buffer. 2021-05-18 11:05:21 +01:00
John Wellbelove
0efecca700 Updated version numbers 2021-05-16 11:12:28 +01:00
John Wellbelove
bbb390ba52 Fixed FSM generation for non-default numbers message types. 2021-05-16 10:57:44 +01:00
John Wellbelove
161b27cb32 Updated versions 2021-05-10 17:42:53 +01:00
John Wellbelove
0990fa56ee Fixed sparse histogram class name 2021-05-10 16:18:23 +01:00
John Wellbelove
8a533485f0 Fixed incorrect histogram end() and cend() return values. 2021-04-27 18:21:44 +01:00
John Wellbelove
4e8ff433c6 Fixed histogram end() and cend() values. 2021-04-27 18:17:35 +01:00
John Wellbelove
b084913b3f Updated versions 2021-04-25 21:03:07 +01:00
John Wellbelove
2e115df488 Merge branch 'feature/Add-hierarchical-FSM-capabilities-to-the-FSM' into development 2021-04-25 15:11:25 +01:00
John Wellbelove
43d16b1034 Adjustments to code and optimisations 2021-04-25 15:11:02 +01:00
John Wellbelove
86edd1a504 Adjustments to code and optimisations 2021-04-25 14:21:40 +01:00
John Wellbelove
b01d58a21c Adjustments to code and optimisations 2021-04-25 14:20:29 +01:00
John Wellbelove
c308dc427b Added additional accept() functions for etl::message_packet.
Updated version numbers
2021-04-24 11:28:45 +01:00
John Wellbelove
60afadcf86 Merge branch 'hotfix/misspelt-macro' into development 2021-04-24 11:25:20 +01:00
John Wellbelove
d40823d2a2 Fixed misspelt DBL_MAX macro 2021-04-24 11:25:02 +01:00
John Wellbelove
7f2ea864e0 Minor changes & renames 2021-04-24 09:25:39 +01:00
John Wellbelove
c5850a005b Minor changes 2021-04-23 11:58:58 +01:00
John Wellbelove
f85d13660f Added additional accept() functions. 2021-04-23 11:29:20 +01:00
Jeremy Overesch
2d3b063df6
Add hierarchical FSM capabilities to the FSM. (#374)
In order to work properly, states with no change need to return ifsm_state::NO_CHANGE rather than their given state id.
Otherwise, when an event isn't handled, it will return the parent state rather than the active state.
Also, in this implementation, a state cannot return a different state during the on_enter_state() function. An assert has been added to check for that.
2021-04-22 08:40:53 +01:00
Jeremy Overesch
d834586d30
Add a static accepts() function to message_packet. Allows a router to determine if a packet type can be created with a generic imessage it received. (#373) 2021-04-22 08:39:41 +01:00
John Wellbelove
7dfd971b4e Fixed ETL_ASSERT for non-class types in etl::pool. 2021-04-19 19:21:14 +01:00
John Wellbelove
32ca2d87d2 Replaced std::distance with etl::distance in erase() and erase_if() for vector.h 2021-04-18 08:45:29 +01:00
James Wang
6770774f69
Delete the superfluous ; (#366) 2021-04-14 21:00:01 +01:00
John Wellbelove
0d6c421fb1 Added etl::erase, etl::erase_if, etl::remove, etl::remove_if 2021-04-13 12:27:11 +01:00
John Wellbelove
f689f32259 Fixed make_string sizes 2021-04-13 10:09:50 +01:00
John Wellbelove
a5ee0bb24c Result member functions are now const 2021-04-12 11:21:10 +01:00
John Wellbelove
32ccdb1bab Updated for new tests and sanity checks 2021-04-11 20:58:28 +01:00
John Wellbelove
d0c5004dfb Updated version and release notes 2021-04-11 10:06:08 +01:00
John Wellbelove
2ec666ac51 Added using imessage_router::receive to etl::fsm 2021-04-10 19:15:25 +01:00
John Wellbelove
285a2cafe6 Change int index parameter to size_t 2021-04-10 19:06:40 +01:00
John Wellbelove
c426fc40b9 Changed traits implementation for maths algorithms 2021-04-10 18:51:10 +01:00
John Wellbelove
1ac0311cfb Unit tests for algorithms and functors 2021-04-10 15:21:16 +01:00
John Wellbelove
71d03fa8e2 Removed enable_if in maths algorithms 2021-04-07 10:29:57 +01:00
John Wellbelove
d5634910a4 Added etl::variance 2021-04-06 20:41:08 +01:00
John Wellbelove
3ba993cf9f Added population/sample option 2021-04-06 10:08:26 +01:00
John Wellbelove
203f082c91 Added etl::standard_deviation + corrected covariance 2021-04-05 20:31:20 +01:00
John Wellbelove
3b367ce2b5 Added etl::covariance and etl::correlation 2021-04-05 19:29:19 +01:00
John Wellbelove
1284cab8a7 Added etl::histogram and etl::sparce_histogram 2021-04-04 13:51:25 +01:00
John Wellbelove
a7b5ed79af Added etl::histogram and etl::sparce_histogram 2021-04-04 12:16:54 +01:00
John Wellbelove
f9ad773dc4 Added etl::histogram and etl::sparce_histogram 2021-04-04 11:34:19 +01:00
John Wellbelove
95c6887c55 Added macros for compilers that don't support HUGE_VAL 2021-04-04 11:33:29 +01:00
John Wellbelove
3f48271ef9 Added etl::accumulate & etl::clamp 2021-04-04 11:32:28 +01:00
John Wellbelove
026dfb8388 Remove redundant code 2021-03-31 15:05:41 +01:00
John Wellbelove
86d7dea95f Updated version numbers 2021-03-31 14:31:55 +01:00
John Wellbelove
04699093a5 Renamed dectr & dectx files 2021-03-31 09:35:47 +01:00
John Wellbelove
7127b96aaf Merge branch 'feature/alternative-crc-tables' into development 2021-03-30 20:22:53 +01:00
John Wellbelove
d3d0faa2c1 CRC updates 2021-03-30 19:10:48 +01:00
Bo Rydberg
5d64e7ff94
Remove non-const versions of iterators for containers (#359) 2021-03-30 08:22:17 +01:00
John Wellbelove
70f0b92a0d CRC updates 2021-03-29 13:54:12 +01:00
John Wellbelove
47f6113b97 Intermediate commit - Passing all tests 2021-03-27 09:28:19 +00:00
John Wellbelove
b48f84701d Merge branch 'master' into feature/alternative-crc-tables 2021-03-26 18:42:21 +00:00
John Wellbelove
04ca833543 Updated version numbers 2021-03-26 17:32:27 +00:00
John Wellbelove
696d3d8473 Intermediate commit - Passing all tests 2021-03-26 15:53:30 +00:00
John Wellbelove
640704cf6b Merge branch 'hotfix/change-static-const-to-static-etl-constant' into development 2021-03-25 17:12:33 +00:00
John Wellbelove
61b0811d65 Change static const to static ETL_CONSTANT 2021-03-25 17:12:17 +00:00
John Wellbelove
01685a36e9 Fix return type for const iterator operators from const_iterator to iterator. 2021-03-25 15:19:20 +00:00
John Wellbelove
7e37fcf196 Intermediate commit 2021-03-25 10:22:55 +00:00
John Wellbelove
33f3d21300 Intermediate commit 2021-03-24 12:16:01 +00:00
John Wellbelove
23bf71d06a Intermediate commit 2021-03-24 09:24:45 +00:00
Chiraffollo
c9b170a05a
Add moveable parameter support to delegate (#356)
* Add moveable parameter support

* Change std::forward to etl::forward
2021-03-24 08:57:28 +00:00
John Wellbelove
c75e7afe68 selection_sort 2021-03-17 14:25:01 +00:00
John Wellbelove
bb9f27bd8d Merge branch 'master' into feature/add-mathematical-functors 2021-03-16 20:05:32 +00:00
John Wellbelove
36bd492ecf selection_sort 2021-03-16 20:05:05 +00:00
John Wellbelove
f6247239b9 Version number update 2021-03-15 12:15:52 +00:00
Bo Rydberg
c80018b850
string_utilities.h failes to compile with NO_ETL_STL (#354)
Lacks <ctype.h>
2021-03-15 09:53:40 +00:00
John Wellbelove
1f8e359e02 Add free-standing sanity tests for C++03/11/14/17 2021-03-14 16:06:20 +00:00
John Wellbelove
4faf0f4720 Merge branch 'feature/C++98/03_compatibilty' into feature/c++98-03-compatibilty
# Conflicts:
#	include/etl/array.h
#	include/etl/basic_string.h
#	include/etl/circular_buffer.h
#	include/etl/deque.h
#	include/etl/file_error_numbers.h
#	include/etl/forward_list.h
#	include/etl/indirect_vector.h
#	include/etl/intrusive_forward_list.h
#	include/etl/intrusive_list.h
#	include/etl/limits.h
#	include/etl/list.h
#	include/etl/private/minmax_pop.h
#	include/etl/private/minmax_push.h
#	include/etl/string.h
#	include/etl/string_view.h
#	include/etl/u16string.h
#	include/etl/u32string.h
#	include/etl/unordered_multimap.h
#	include/etl/vector.h
#	include/etl/version.h
#	include/etl/wstring.h
#	library.json
#	library.properties
#	support/Release notes.txt
#	test/test_atomic_clang_sync.cpp
2021-03-14 14:40:00 +00:00
John Wellbelove
87bf9ce76d Updates to C++03 compatibility 2021-03-12 17:31:40 +00:00
Bo Rydberg
4aa74e35f2
Add free-standing sanity tests for C++03/11/14/17 (#351)
* Add ETL_CONSTEXPR for state_chart, transision and state constructors.

* Updated versions

* Added ETL_CONSTEXPR

* Added ETL_CONSTEXPR

* Updated version numbers

* Updated version numbers

* Add buffer descriptors

* Issue 297

* Updated version numbers

* Added extra std/etl conversions

* Updated strings

Re-introduced case utilities
Fixed make_string for empty strings

* make_string_view + fix constexpr in flags.h

* Added etl::buffer_descriptors.

Added std/etl pair conversions.
Added etl::make_string_view.
Resolved issue with zero length literals for etl::make_string
Resolved etl::flags constexpr issues.
Added atomics for clang.
Resolved type_traits issues for GCC < v5

* Added etl::buffer_descriptors.

Added std/etl pair conversions.
Added etl::make_string_view.
Resolved issue with zero length literals for etl::make_string
Resolved etl::flags constexpr issues.
Added atomics for clang.
Resolved type_traits issues for GCC < v5

* Fixed warnings

* Disabled ASAN option in Visual Studio project.

* Fix make_string for zero length literals

Remove redundant test support code

* Updated notes

* Adding Tests for a fractional -1.0 < x < 0, fixing missing sign for integral parts equals to zero 0 (#306)

Co-authored-by: Heinz-Peter Liechtenecker <h.liechtenecker@fh-kaernten.at>

* #306-bugfix-to-string-formatting

* Updated version numbers

* Update setup-msbuild to v1.0.2

Updates Actions core toolkit to fix vulnerability on environment/path variable setting.

* circular_buffer_ext

* forward_list_ext

* list_ext

* indirect_vector_ext

* string_ext

* vector_ext

* Updated .leu

* Merge remote-tracking branch 'origin/feature/no-huge-value' into development

* Remove VS2017 project

* Refactor of etl::buffer_descriptors interface

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* clang.yml hack for testing

* clang hack for testing

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Refactor buffer_descriptors test

* Fixed non-initialisation of in_use flag.

* Fixed non-initialisation of in_use flag.

* Squashed commit of the following:

commit dceb56dd1a19be6fe9b991bb50e08902eefe36a8
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 19:27:18 2020 +0000

    Fixed non-initialisation of in_use flag.

commit c7ee1d6574ca5d95869152c5f8e4e6d02a7fa6bc
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 19:20:24 2020 +0000

    Fixed non-initialisation of in_use flag.

commit 36cbf21cd1b67a28255582cfb4a188a601631ab2
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:52:53 2020 +0000

    Refactor buffer_descriptors test

commit 49c60add63153bf53f400a891d8c4fb880cacda8
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:44:42 2020 +0000

    Refactor buffer_descriptors test

commit 7bda7678311bf2eb497483f3ef27c3af9211680b
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:29:02 2020 +0000

    Refactor buffer_descriptors test

commit 7a68c932a7df05f66690fa63e67365cf4b0619e8
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:14:30 2020 +0000

    Refactor buffer_descriptors test

commit a9b25ac67d175f58751a2eb819f0e5822e8f0cf9
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:08:21 2020 +0000

    Refactor buffer_descriptors test

commit 0c721c0466733751708fcbd995ce0bc1d7c0a932
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:58:22 2020 +0000

    Refactor buffer_descriptors test

commit 4b2dd2fce22cd0a4846b95695fbfd812e0823540
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:47:43 2020 +0000

    Refactor buffer_descriptors test

commit 80d5776c409b416377269d543bd539bdad83dc86
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:32:27 2020 +0000

    Refactor buffer_descriptors test

commit 3564ac5b7ef89c41b240d9f54fce36042408daa0
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:17:50 2020 +0000

    Refactor buffer_descriptors test

commit 297ef42c60e4228bfbcb2adcddeb6b8a617c4113
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:08:45 2020 +0000

    Refactor buffer_descriptors test

commit 658d592c96eb7eaf1afb5d09fef38e293ea6f79b
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:58:52 2020 +0000

    Refactor buffer_descriptors test

commit e97d8f90d5527349324ea84fd578c1d879d7a5a4
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:48:52 2020 +0000

    Refactor buffer_descriptors test

commit ed783a8ccccc8673c0f55eb1780c08668880a745
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:43:52 2020 +0000

    clang.yml hack for testing

* Squashed commit of the following:

commit dceb56dd1a19be6fe9b991bb50e08902eefe36a8
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 19:27:18 2020 +0000

    Fixed non-initialisation of in_use flag.

commit c7ee1d6574ca5d95869152c5f8e4e6d02a7fa6bc
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 19:20:24 2020 +0000

    Fixed non-initialisation of in_use flag.

commit 36cbf21cd1b67a28255582cfb4a188a601631ab2
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:52:53 2020 +0000

    Refactor buffer_descriptors test

commit 49c60add63153bf53f400a891d8c4fb880cacda8
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:44:42 2020 +0000

    Refactor buffer_descriptors test

commit 7bda7678311bf2eb497483f3ef27c3af9211680b
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:29:02 2020 +0000

    Refactor buffer_descriptors test

commit 7a68c932a7df05f66690fa63e67365cf4b0619e8
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:14:30 2020 +0000

    Refactor buffer_descriptors test

commit a9b25ac67d175f58751a2eb819f0e5822e8f0cf9
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:08:21 2020 +0000

    Refactor buffer_descriptors test

commit 0c721c0466733751708fcbd995ce0bc1d7c0a932
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:58:22 2020 +0000

    Refactor buffer_descriptors test

commit 4b2dd2fce22cd0a4846b95695fbfd812e0823540
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:47:43 2020 +0000

    Refactor buffer_descriptors test

commit 80d5776c409b416377269d543bd539bdad83dc86
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:32:27 2020 +0000

    Refactor buffer_descriptors test

commit 3564ac5b7ef89c41b240d9f54fce36042408daa0
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:17:50 2020 +0000

    Refactor buffer_descriptors test

commit 297ef42c60e4228bfbcb2adcddeb6b8a617c4113
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:08:45 2020 +0000

    Refactor buffer_descriptors test

commit 658d592c96eb7eaf1afb5d09fef38e293ea6f79b
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:58:52 2020 +0000

    Refactor buffer_descriptors test

commit e97d8f90d5527349324ea84fd578c1d879d7a5a4
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:48:52 2020 +0000

    Refactor buffer_descriptors test

commit ed783a8ccccc8673c0f55eb1780c08668880a745
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:43:52 2020 +0000

    clang.yml hack for testing

* Squashed commit of the following:

commit dceb56dd1a19be6fe9b991bb50e08902eefe36a8
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 19:27:18 2020 +0000

    Fixed non-initialisation of in_use flag.

commit c7ee1d6574ca5d95869152c5f8e4e6d02a7fa6bc
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 19:20:24 2020 +0000

    Fixed non-initialisation of in_use flag.

commit 36cbf21cd1b67a28255582cfb4a188a601631ab2
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:52:53 2020 +0000

    Refactor buffer_descriptors test

commit 49c60add63153bf53f400a891d8c4fb880cacda8
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:44:42 2020 +0000

    Refactor buffer_descriptors test

commit 7bda7678311bf2eb497483f3ef27c3af9211680b
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:29:02 2020 +0000

    Refactor buffer_descriptors test

commit 7a68c932a7df05f66690fa63e67365cf4b0619e8
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:14:30 2020 +0000

    Refactor buffer_descriptors test

commit a9b25ac67d175f58751a2eb819f0e5822e8f0cf9
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 18:08:21 2020 +0000

    Refactor buffer_descriptors test

commit 0c721c0466733751708fcbd995ce0bc1d7c0a932
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:58:22 2020 +0000

    Refactor buffer_descriptors test

commit 4b2dd2fce22cd0a4846b95695fbfd812e0823540
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:47:43 2020 +0000

    Refactor buffer_descriptors test

commit 80d5776c409b416377269d543bd539bdad83dc86
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:32:27 2020 +0000

    Refactor buffer_descriptors test

commit 3564ac5b7ef89c41b240d9f54fce36042408daa0
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:17:50 2020 +0000

    Refactor buffer_descriptors test

commit 297ef42c60e4228bfbcb2adcddeb6b8a617c4113
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 17:08:45 2020 +0000

    Refactor buffer_descriptors test

commit 658d592c96eb7eaf1afb5d09fef38e293ea6f79b
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:58:52 2020 +0000

    Refactor buffer_descriptors test

commit e97d8f90d5527349324ea84fd578c1d879d7a5a4
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:48:52 2020 +0000

    Refactor buffer_descriptors test

commit ed783a8ccccc8673c0f55eb1780c08668880a745
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:43:52 2020 +0000

    clang.yml hack for testing

* Squashed commit of the following:

commit fa9d9592aa7cb686ae1e8c6eeedfcbfda7a59835
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Thu Nov 26 19:26:11 2020 +0000

    format_spec may be constexpr

* Squashed commit of the following:

commit 638cceaf9c4a6964e58894adb36d633b01a1d5ac
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Wed Nov 25 17:57:06 2020 +0000

    Strings inherit secure status on copy.

commit 5f1ab55c61ed62b5c234b5e1d6ac3ef362b78851
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 22:33:08 2020 +0000

    Squashed commit of the following:

    commit dceb56dd1a19be6fe9b991bb50e08902eefe36a8
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 19:27:18 2020 +0000

        Fixed non-initialisation of in_use flag.

    commit c7ee1d6574ca5d95869152c5f8e4e6d02a7fa6bc
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 19:20:24 2020 +0000

        Fixed non-initialisation of in_use flag.

    commit 36cbf21cd1b67a28255582cfb4a188a601631ab2
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:52:53 2020 +0000

        Refactor buffer_descriptors test

    commit 49c60add63153bf53f400a891d8c4fb880cacda8
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:44:42 2020 +0000

        Refactor buffer_descriptors test

    commit 7bda7678311bf2eb497483f3ef27c3af9211680b
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:29:02 2020 +0000

        Refactor buffer_descriptors test

    commit 7a68c932a7df05f66690fa63e67365cf4b0619e8
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:14:30 2020 +0000

        Refactor buffer_descriptors test

    commit a9b25ac67d175f58751a2eb819f0e5822e8f0cf9
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:08:21 2020 +0000

        Refactor buffer_descriptors test

    commit 0c721c0466733751708fcbd995ce0bc1d7c0a932
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:58:22 2020 +0000

        Refactor buffer_descriptors test

    commit 4b2dd2fce22cd0a4846b95695fbfd812e0823540
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:47:43 2020 +0000

        Refactor buffer_descriptors test

    commit 80d5776c409b416377269d543bd539bdad83dc86
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:32:27 2020 +0000

        Refactor buffer_descriptors test

    commit 3564ac5b7ef89c41b240d9f54fce36042408daa0
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:17:50 2020 +0000

        Refactor buffer_descriptors test

    commit 297ef42c60e4228bfbcb2adcddeb6b8a617c4113
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:08:45 2020 +0000

        Refactor buffer_descriptors test

    commit 658d592c96eb7eaf1afb5d09fef38e293ea6f79b
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 16:58:52 2020 +0000

        Refactor buffer_descriptors test

    commit e97d8f90d5527349324ea84fd578c1d879d7a5a4
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 16:48:52 2020 +0000

        Refactor buffer_descriptors test

    commit ed783a8ccccc8673c0f55eb1780c08668880a745
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 16:43:52 2020 +0000

        clang.yml hack for testing

commit c26e42253f4502c3afb943a7ff1f7ef0f79c475b
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 19:32:48 2020 +0000

    Squashed commit of the following:

    commit dceb56dd1a19be6fe9b991bb50e08902eefe36a8
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 19:27:18 2020 +0000

        Fixed non-initialisation of in_use flag.

    commit c7ee1d6574ca5d95869152c5f8e4e6d02a7fa6bc
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 19:20:24 2020 +0000

        Fixed non-initialisation of in_use flag.

    commit 36cbf21cd1b67a28255582cfb4a188a601631ab2
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:52:53 2020 +0000

        Refactor buffer_descriptors test

    commit 49c60add63153bf53f400a891d8c4fb880cacda8
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:44:42 2020 +0000

        Refactor buffer_descriptors test

    commit 7bda7678311bf2eb497483f3ef27c3af9211680b
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:29:02 2020 +0000

        Refactor buffer_descriptors test

    commit 7a68c932a7df05f66690fa63e67365cf4b0619e8
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:14:30 2020 +0000

        Refactor buffer_descriptors test

    commit a9b25ac67d175f58751a2eb819f0e5822e8f0cf9
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:08:21 2020 +0000

        Refactor buffer_descriptors test

    commit 0c721c0466733751708fcbd995ce0bc1d7c0a932
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:58:22 2020 +0000

        Refactor buffer_descriptors test

    commit 4b2dd2fce22cd0a4846b95695fbfd812e0823540
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:47:43 2020 +0000

        Refactor buffer_descriptors test

    commit 80d5776c409b416377269d543bd539bdad83dc86
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:32:27 2020 +0000

        Refactor buffer_descriptors test

    commit 3564ac5b7ef89c41b240d9f54fce36042408daa0
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:17:50 2020 +0000

        Refactor buffer_descriptors test

    commit 297ef42c60e4228bfbcb2adcddeb6b8a617c4113
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:08:45 2020 +0000

        Refactor buffer_descriptors test

    commit 658d592c96eb7eaf1afb5d09fef38e293ea6f79b
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 16:58:52 2020 +0000

        Refactor buffer_descriptors test

    commit e97d8f90d5527349324ea84fd578c1d879d7a5a4
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 16:48:52 2020 +0000

        Refactor buffer_descriptors test

    commit ed783a8ccccc8673c0f55eb1780c08668880a745
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 16:43:52 2020 +0000

        clang.yml hack for testing

commit 3cbe1a80030263aac53616391fa434d0501f4f26
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 19:31:03 2020 +0000

    Squashed commit of the following:

    commit dceb56dd1a19be6fe9b991bb50e08902eefe36a8
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 19:27:18 2020 +0000

        Fixed non-initialisation of in_use flag.

    commit c7ee1d6574ca5d95869152c5f8e4e6d02a7fa6bc
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 19:20:24 2020 +0000

        Fixed non-initialisation of in_use flag.

    commit 36cbf21cd1b67a28255582cfb4a188a601631ab2
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:52:53 2020 +0000

        Refactor buffer_descriptors test

    commit 49c60add63153bf53f400a891d8c4fb880cacda8
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:44:42 2020 +0000

        Refactor buffer_descriptors test

    commit 7bda7678311bf2eb497483f3ef27c3af9211680b
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:29:02 2020 +0000

        Refactor buffer_descriptors test

    commit 7a68c932a7df05f66690fa63e67365cf4b0619e8
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:14:30 2020 +0000

        Refactor buffer_descriptors test

    commit a9b25ac67d175f58751a2eb819f0e5822e8f0cf9
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 18:08:21 2020 +0000

        Refactor buffer_descriptors test

    commit 0c721c0466733751708fcbd995ce0bc1d7c0a932
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:58:22 2020 +0000

        Refactor buffer_descriptors test

    commit 4b2dd2fce22cd0a4846b95695fbfd812e0823540
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:47:43 2020 +0000

        Refactor buffer_descriptors test

    commit 80d5776c409b416377269d543bd539bdad83dc86
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:32:27 2020 +0000

        Refactor buffer_descriptors test

    commit 3564ac5b7ef89c41b240d9f54fce36042408daa0
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:17:50 2020 +0000

        Refactor buffer_descriptors test

    commit 297ef42c60e4228bfbcb2adcddeb6b8a617c4113
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 17:08:45 2020 +0000

        Refactor buffer_descriptors test

    commit 658d592c96eb7eaf1afb5d09fef38e293ea6f79b
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 16:58:52 2020 +0000

        Refactor buffer_descriptors test

    commit e97d8f90d5527349324ea84fd578c1d879d7a5a4
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 16:48:52 2020 +0000

        Refactor buffer_descriptors test

    commit ed783a8ccccc8673c0f55eb1780c08668880a745
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Nov 24 16:43:52 2020 +0000

        clang.yml hack for testing

commit e939e6b15557544bd0bb88d9862b5d5711170859
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:47:40 2020 +0000

    Refactor buffer_descriptors test

commit 4c4149abf6221f245aa4d73eb85e50319e7bd32c
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Nov 24 16:45:53 2020 +0000

    clang hack for testing

* Added AVR compile time switch

* Updated version numbers

* Fixed AVR to __AVR__

* Fixed version number retrieval from Github

* constexpr, template aliases and inline variables

* Updated version numbers

* Added ETL_ASSERT for out-of-order state list.

* issue-314-constexpr

* issue-314-constexpr

* Make modifying constexpr C++14 only

* Make modifying constexpr C++14 only

* Removed double subtraction of float size from 'bits_remaining' for floating point reads

* Added parameterised constructor for etl::format_spec

* Updated version numbers

* Include new on megaAVR Boards (Arduino Nano Every) (#313)

* Change new to new.h

* Only include <new> header if ETL supports STL

* Adding a flag to define placement new if necessary

Co-authored-by: Heinz-Peter Liechtenecker <h.liechtenecker@fh-kaernten.at>

* Minor changes

* Added clang mutex header redirect to GCC implementation

* Updated for automatic detection of <new> or <new.h>

* Updated generators

* Updated generators

* Merge branch 'hotfix/issue-303-etl-not-compatible-with-arduino-ide' into development

# Conflicts:
#	support/Release notes.txt
#	test/vs2019/etl.vcxproj.filters

* Make span std compliant (#317)

* add missing overloads for span::first + span::last

The C++20 standard defines additional overloads for first and last:

  template< std::size_t Count >
  constexpr std::span<element_type, Count> first() const;
  constexpr std::span<element_type, std::dynamic_extent> first( size_type Count ) const;

  template< std::size_t Count >
  constexpr std::span<element_type, Count> last() const;
  constexpr std::span<element_type, std::dynamic_extent> last( size_type Count ) const;

etl implements only the first (= template) variants so far. To be able to
compile valid C++20 code the missing overload should be added.

* remove explicit specifier for span conversion operator

The C++20 standard allows to assign a span of non-const elements to a span of
const elements. Example:

    std::span<const int> cintspan;
    std::span<int> intspan;
    cintspan = intspan;

This is enabled in the STL by using an explicit specifier with a constant
expression for one of the conversion constructors:

    template< class R >
    explicit(extent != std::dynamic_extent)
    constexpr span( R&& r );

The explicit specifier together with a constant expression is a C++20 feature
and therefore can't be used within etl. To be able to compile valid C++20
code which uses the conversion on assignment, the explicit specifier has to
be removed.

* remove explicit specifier for span conversion operator

The C++20 standard allows to assign an array of elements directly (without
explicitly using a conversion constructor). Example:

    const int data = { 1, 2, 3 };
    std::span<const int> cintspan;
    cintspan = data;

To be able to compile valid C++20 code which uses the conversion on assignment,
the explicit specifier of the array-conversion constructor has to be removed.

* Updated version numbers

* Change std::move to etl::move in etl::forward_list

* Create Arduino ZIP

* Fcs make getter const (#319)

* make FCS get and conversion-operator methods const

etl::frame_check_sequence has to access methods which can be made const:
  value_type value() const
  operator value_type() const

* make jenkins_policy::initial and final const

According to the documentation, initial, add and const have to be
tagged as const.

final has to be const now due to the change in the previous commit which
makes the fcs getter methods const.

* let default assignment operator return a reference to itself (#320)

The default assignment operator in C++ shall return a reference to *this.

* Arduino compatibility

* Arduino compatibility

* Updated version numbers

* Merge branch 'hotfix/fcs_make_getter_const' into development

* Arduino compatibility

* VS2019 Delegate function interrupt service example

* Removed unused functions

* Added is_random_access_iterator and deprecated is_random_iterator

* Interim commit

* Added etl::for_each

* Added etl::multi_loop

* etl::multi_loop implementation

* Added etl::multi_loop

* Added typedefs

* Latest implementation

* Refactor multi_loop to multi_range

* Moved code lines

* Interim commit

* Interim commit

Refactor of reference counted types.

* Merged shared_message handlers into message_router

* reference_counted_object and reference_counted_message specialisations

* reference_counted_object and reference_counted_message specialisations

* reference_counted_object and reference_counted_message specialisations

* Unknown board is not an error

* Refactored reference_counted_message now contains owner reference

* Added fixed_sized_memory_block_pool and restored imemory_block_pool interface

* message router changes

* Fixed LGT8F macro name clash

* Updated generators

* Updated deque from development

* get_memory_block_size() const

* Updates to pools and memory allocators

* LLVM changes

* Ongoing addition of unit tests

* Added final unit tests

* Added static asserts

* Renamed internal structure

* Minor updates.

* Added virtual function 'void on_task_added()' that is called when a task is added to a shceduler.

* Added virtual function 'void on_task_added()' that is called when a task is added to a scheduler.

* Update version number

* Removed pool_message and non_pool_message

* Added shared_message example

* Added shared_message receive override to messge_bus

* Added shared_message example

* Added memory allocator successor

* Added reference_counted_message specialisation for void counter

* Added lock/unlock interface

* Added lock/unlock example

* Added constructors with deleters for unique_ptr.

* Fixed typos in rvalue constructor

* Added ilockable interface class

* Fixed VS2019 warning for etl::deque iterators.

* Added nullptr check to unique_ptr destructor

* Added nullptr check to unique_ptr destructor.

* Added nullptr check to unique_ptr destructor.

* Added ilockable interface & queue_lockable

* Added nullptr check to unique_ptr destructor.

* Typo in unique_ptr

* Refactored queues

* Added virtual destructor to observer.

Changed C++11 destructors to '= default'.

* Updated version and release notes.

* Added more CMakeLists.txt files for examples

* Added enable_if for container iterator costructors, to exclude integrals from consideration

* Squashed commit of the following:

commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Jan 31 12:32:35 2021 +0000

    Fixed rollover error for etl::queue_spsc_atomic

    Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
    Updated QueuedMessageRouter example

* Squashed commit of the following:

commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Jan 31 12:34:49 2021 +0000

    Squashed commit of the following:

    commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:32:35 2021 +0000

        Fixed rollover error for etl::queue_spsc_atomic

        Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
        Updated QueuedMessageRouter example

* Squashed commit of the following:

commit 6107c4538be149137209d85e5f41031291bc7150
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Feb 2 12:15:31 2021 +0000

    Added move constructor and move assignment to etl::shared_message

commit c9a5716012db9b614ea67660ebf64dcb790ce571
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Jan 31 12:36:29 2021 +0000

    Squashed commit of the following:

    commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:34:49 2021 +0000

        Squashed commit of the following:

        commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:32:35 2021 +0000

            Fixed rollover error for etl::queue_spsc_atomic

            Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
            Updated QueuedMessageRouter example

* Squashed commit of the following:

commit 007b56d03513887636b84fc246e57d6c4f8b777e
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Feb 2 18:09:51 2021 +0000

    Squashed commit of the following:

    commit 6107c4538be149137209d85e5f41031291bc7150
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Feb 2 12:15:31 2021 +0000

        Added move constructor and move assignment to etl::shared_message

    commit c9a5716012db9b614ea67660ebf64dcb790ce571
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:36:29 2021 +0000

        Squashed commit of the following:

        commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:34:49 2021 +0000

            Squashed commit of the following:

            commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:32:35 2021 +0000

                Fixed rollover error for etl::queue_spsc_atomic

                Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                Updated QueuedMessageRouter example

commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Jan 31 12:34:49 2021 +0000

    Squashed commit of the following:

    commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:32:35 2021 +0000

        Fixed rollover error for etl::queue_spsc_atomic

        Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
        Updated QueuedMessageRouter example

* Squashed commit of the following:

commit 04ba91bcccc8e12867962bc3746665f430672a23
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sat Feb 6 10:43:34 2021 +0000

    Updated shared message unit test

commit fababc5cf748073464b4294a50c201cb0aa4fa13
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Fri Feb 5 09:41:52 2021 +0000

    Updated FSM generator

commit ff287bcf0a833ca70933354b42b8b036b422ff81
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Fri Feb 5 09:35:56 2021 +0000

    Updated message router generator

commit 52724e1e62b55dad81e2f80dd656026d828b3214
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Thu Feb 4 13:06:50 2021 +0000

    Updated unit tests

commit 0d89105262aa050577ccc17ddc6eece9f4fc5d18
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Feb 2 20:09:35 2021 +0000

    Interim commit

commit ce8385ff24826103c7a55267ccf3f8a31f517e0b
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Feb 2 18:13:29 2021 +0000

    Squashed commit of the following:

    commit 007b56d03513887636b84fc246e57d6c4f8b777e
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Feb 2 18:09:51 2021 +0000

        Squashed commit of the following:

        commit 6107c4538be149137209d85e5f41031291bc7150
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Tue Feb 2 12:15:31 2021 +0000

            Added move constructor and move assignment to etl::shared_message

        commit c9a5716012db9b614ea67660ebf64dcb790ce571
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:36:29 2021 +0000

            Squashed commit of the following:

            commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:34:49 2021 +0000

                Squashed commit of the following:

                commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
                Author: John Wellbelove <github@wellbelove.co.uk>
                Date:   Sun Jan 31 12:32:35 2021 +0000

                    Fixed rollover error for etl::queue_spsc_atomic

                    Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                    Updated QueuedMessageRouter example

    commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:34:49 2021 +0000

        Squashed commit of the following:

        commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:32:35 2021 +0000

            Fixed rollover error for etl::queue_spsc_atomic

            Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
            Updated QueuedMessageRouter example

commit c9a5716012db9b614ea67660ebf64dcb790ce571
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Jan 31 12:36:29 2021 +0000

    Squashed commit of the following:

    commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:34:49 2021 +0000

        Squashed commit of the following:

        commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:32:35 2021 +0000

            Fixed rollover error for etl::queue_spsc_atomic

            Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
            Updated QueuedMessageRouter example

* Squashed commit of the following:

commit 97a6e6a03557359442123d439cef9bdf6dea2d1b
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Feb 7 11:02:49 2021 +0000

    Squashed commit of the following:

    commit 04ba91bcccc8e12867962bc3746665f430672a23
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sat Feb 6 10:43:34 2021 +0000

        Updated shared message unit test

    commit fababc5cf748073464b4294a50c201cb0aa4fa13
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Fri Feb 5 09:41:52 2021 +0000

        Updated FSM generator

    commit ff287bcf0a833ca70933354b42b8b036b422ff81
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Fri Feb 5 09:35:56 2021 +0000

        Updated message router generator

    commit 52724e1e62b55dad81e2f80dd656026d828b3214
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Thu Feb 4 13:06:50 2021 +0000

        Updated unit tests

    commit 0d89105262aa050577ccc17ddc6eece9f4fc5d18
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Feb 2 20:09:35 2021 +0000

        Interim commit

    commit ce8385ff24826103c7a55267ccf3f8a31f517e0b
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Feb 2 18:13:29 2021 +0000

        Squashed commit of the following:

        commit 007b56d03513887636b84fc246e57d6c4f8b777e
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Tue Feb 2 18:09:51 2021 +0000

            Squashed commit of the following:

            commit 6107c4538be149137209d85e5f41031291bc7150
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Tue Feb 2 12:15:31 2021 +0000

                Added move constructor and move assignment to etl::shared_message

            commit c9a5716012db9b614ea67660ebf64dcb790ce571
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:36:29 2021 +0000

                Squashed commit of the following:

                commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
                Author: John Wellbelove <github@wellbelove.co.uk>
                Date:   Sun Jan 31 12:34:49 2021 +0000

                    Squashed commit of the following:

                    commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
                    Author: John Wellbelove <github@wellbelove.co.uk>
                    Date:   Sun Jan 31 12:32:35 2021 +0000

                        Fixed rollover error for etl::queue_spsc_atomic

                        Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                        Updated QueuedMessageRouter example

        commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:34:49 2021 +0000

            Squashed commit of the following:

            commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:32:35 2021 +0000

                Fixed rollover error for etl::queue_spsc_atomic

                Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                Updated QueuedMessageRouter example

    commit c9a5716012db9b614ea67660ebf64dcb790ce571
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:36:29 2021 +0000

        Squashed commit of the following:

        commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:34:49 2021 +0000

            Squashed commit of the following:

            commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:32:35 2021 +0000

                Fixed rollover error for etl::queue_spsc_atomic

                Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                Updated QueuedMessageRouter example

commit 007b56d03513887636b84fc246e57d6c4f8b777e
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Feb 2 18:09:51 2021 +0000

    Squashed commit of the following:

    commit 6107c4538be149137209d85e5f41031291bc7150
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Feb 2 12:15:31 2021 +0000

        Added move constructor and move assignment to etl::shared_message

    commit c9a5716012db9b614ea67660ebf64dcb790ce571
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:36:29 2021 +0000

        Squashed commit of the following:

        commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:34:49 2021 +0000

            Squashed commit of the following:

            commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:32:35 2021 +0000

                Fixed rollover error for etl::queue_spsc_atomic

                Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                Updated QueuedMessageRouter example

commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Jan 31 12:34:49 2021 +0000

    Squashed commit of the following:

    commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:32:35 2021 +0000

        Fixed rollover error for etl::queue_spsc_atomic

        Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
        Updated QueuedMessageRouter example

* Changed template aliases so they are available for C++11 rather than C++14.

* Changed template aliases so they are available for C++11 rather than C++14.

* Allow default constructed messages for shared messages

* Updated version numbers

* Modified reference_counted_message_pool::allocate() return type

* Modified reference_counted_message_pool::allocate() return type

* Added non-const get_message() member funtions in shared message framework.

* Added update_size() to string API to fix string lengths after insertion of characters by C code.

* Interface for C string handling.

* Fixed indexing error in find_next for etl::bitset.

Added some enum tests for type_traits

* Updated version

* fix bug in ibitset find_next method (#338)

Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>

* Merge branch 'hotfix/bitset-iteration-error' into development

* Merge branch 'hotfix/Chiraffollo-fix-find_next' into development

* Updated version

* Fixed indexing error in find_next for etl::bitset.

Added some enum tests for type_traits

* Updated version

* Merge branch 'hotfix/bitset-iteration-error' into development

* fix bug in ibitset find_next method (#338)

Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>

* Merge branch 'hotfix/Chiraffollo-fix-find_next' into development

* Updated version

* Added data_end() and renamed trim() to trim_to_terminator()

* Added ETL_CONSTANT to numeric_limits member functions.

* Added uninitialized_resize()

* Updated version numbers

* Added uninitialized_resize() tests to external buffer containers

* Updated example for shared_message

* Updates to etl::shared_message example application.

* Added specialisation of etl::state_chart that allows a parameter to be passed to the event handler.

* Export headers as system includes (#340)

Gcc doesn't apply warning to system includes paths. This change
allows a project to use high warning levels without getting swamped by ETL
issues.

* Fix extent type conversion warning (#339)

* Issue #339 - Fix extent type conversion warning

* Merge branch 'feature/state-chart-to-have-optional-data-parameter' into development

* Minor updates to state chart

* Minor updates to state chart

* Fix extent error in clang and gcc

* Fix extent error in clang and gcc

* Initial code

* Fix C++14 only type aliases for STL

* Fix C++14 only type aliases for STL

* Fix C++14 only type aliases for STL

* Fix C++14 only type aliases for STL

* Abstracted unit test framework header

* Initial commit

* Added message_router_registry

* Added message_router_registry

* Added iterators

* Added iterators

* Changed to using etl::flat_multimap

* Updates to message_router_registry

* Remove executable permission on C++ source files (#341)

* Updated * & -> operators.

* Partial fix to compiling with C++98/03 (#342)

* Updated version numbers

* Fix default function templates for C++03

* Updated file id macros

* Added ETL_CONSTEXPR to etl::array

* Remove unnecessary template keyword to destroy() call.

* Remove unnecessary template keyword to destroy() call.

* Fix default function templates for C++03

* Correct use of ETL_NULLPTR instead for keyword nulllptr (#346)

Gives problem in C++98/03 mode.

* Remove etl/ prefix in state_chart.h (#347)

It's the only file to include internal header files with "etl/... .h".

* Add free-standing sanity tests for C++03/11/14/17

Co-authored-by: John Wellbelove <github@wellbelove.co.uk>
Co-authored-by: Heinz-Peter Liechtenecker <heinz.liechtenecker@gmail.com>
Co-authored-by: Heinz-Peter Liechtenecker <h.liechtenecker@fh-kaernten.at>
Co-authored-by: Steffen Zimmermann <mampfes@users.noreply.github.com>
Co-authored-by: Chiraffollo <ollymarx@web.de>
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
Co-authored-by: Adam Boseley <aboseley@users.noreply.github.com>
2021-03-12 14:13:31 +00:00
John Wellbelove
fb17d48d9b Add atomic bool to gcc clang implementations 2021-03-12 13:14:02 +00:00
Bo Rydberg
1586961056
Remove etl/ prefix in state_chart.h (#347)
It's the only file to include internal header files with "etl/... .h".
2021-03-11 18:13:25 +00:00
Bo Rydberg
61505cbb74
Correct use of ETL_NULLPTR instead for keyword nulllptr (#346)
Gives problem in C++98/03 mode.
2021-03-11 18:12:46 +00:00
John Wellbelove
206c080866 Fix default function templates for C++03 2021-03-10 18:38:02 +00:00
John Wellbelove
c158af744c Remove unnecessary template keyword to destroy() call. 2021-03-10 18:23:00 +00:00
John Wellbelove
6b3311d6f1 Added ETL_CONSTEXPR to etl::array 2021-03-10 15:57:00 +00:00
John Wellbelove
87554af4f8 Updated file id macros 2021-03-10 12:50:07 +00:00
John Wellbelove
5696c4066b Fix default function templates for C++03 2021-03-10 09:46:41 +00:00
John Wellbelove
4545e7627f Updated version numbers 2021-03-09 12:52:58 +00:00
John Wellbelove
271edc82d1 Merge branch 'hotfix/C++98-fixes' into development 2021-03-09 10:53:23 +00:00
Bo Rydberg
b5bb408148
Partial fix to compiling with C++98/03 (#342) 2021-03-09 10:48:11 +00:00
John Wellbelove
487d92bbe3 Merge branch 'feature/message_router_registry' into development 2021-03-09 10:44:29 +00:00
John Wellbelove
57c57eb069 Updated * & -> operators. 2021-03-09 10:44:01 +00:00
Bo Rydberg
369645179f
Remove executable permission on C++ source files (#341) 2021-03-09 10:25:15 +00:00
John Wellbelove
6e55cdeea8 Updates to message_router_registry 2021-03-08 20:40:00 +00:00
John Wellbelove
44a90fdbb3 Changed to using etl::flat_multimap 2021-03-07 12:32:24 +00:00
John Wellbelove
997162ec14 Added iterators 2021-03-06 13:16:51 +00:00
John Wellbelove
fbc12ca084 Added iterators 2021-03-06 12:58:44 +00:00
John Wellbelove
03f6299d63 Added message_router_registry 2021-03-05 20:34:14 +00:00
John Wellbelove
563fc07186 Added message_router_registry 2021-03-05 20:19:18 +00:00
John Wellbelove
11d0005f1b Initial commit 2021-03-05 13:52:35 +00:00
John Wellbelove
0070fc1aad Fix C++14 only type aliases for STL 2021-03-05 13:52:34 +00:00
John Wellbelove
95e015d141 Fix C++14 only type aliases for STL 2021-03-05 13:52:33 +00:00
John Wellbelove
8e372fcedc Initial code 2021-03-02 11:03:26 +00:00
John Wellbelove
1d179c9bde Fix extent error in clang and gcc 2021-03-01 18:51:23 +00:00
John Wellbelove
23001a69b6 Fix extent error in clang and gcc 2021-03-01 18:38:29 +00:00
John Wellbelove
123781ebd8 Minor updates to state chart 2021-03-01 13:17:52 +00:00
John Wellbelove
0d1cdef651 Merge branch 'feature/state-chart-to-have-optional-data-parameter' into development 2021-02-28 11:34:34 +00:00
John Wellbelove
bec129a192 Merge branch 'feature/state-chart-to-have-optional-data-parameter' into development 2021-02-28 11:06:32 +00:00
John Wellbelove
7641ad2958 Issue #339 - Fix extent type conversion warning 2021-02-28 11:03:06 +00:00
Adam Boseley
bcf8a239cf
Fix extent type conversion warning (#339) 2021-02-28 10:53:50 +00:00
John Wellbelove
5397239c08 Added specialisation of etl::state_chart that allows a parameter to be passed to the event handler. 2021-02-28 10:43:24 +00:00
John Wellbelove
090494b970 Updates to etl::shared_message example application. 2021-02-26 18:24:18 +00:00
John Wellbelove
9ef9bdeb72 Updated version numbers 2021-02-22 10:48:40 +00:00
John Wellbelove
ede5a91902 Added uninitialized_resize() 2021-02-22 09:33:12 +00:00
John Wellbelove
0fcd767d0b Added ETL_CONSTANT to numeric_limits member functions. 2021-02-20 13:37:29 +00:00
John Wellbelove
679bea0311 Merge branch 'feature/c-helper-interface-for-strings' into development
# Conflicts:
#	support/Release notes.txt
2021-02-18 13:14:46 +00:00
John Wellbelove
99c3bead5a Added data_end() and renamed trim() to trim_to_terminator() 2021-02-18 12:40:31 +00:00
John Wellbelove
557f881d6c Merge branch 'hotfix/bitset-iteration-error' into development 2021-02-17 19:54:28 +00:00
John Wellbelove
c6bb73d7d0 Updated version 2021-02-17 19:54:28 +00:00
John Wellbelove
580d9848dc Fixed indexing error in find_next for etl::bitset.
Added some enum tests for type_traits
2021-02-17 19:54:27 +00:00
John Wellbelove
45c40a2c9d Merge branch 'hotfix/bitset-iteration-error' into development 2021-02-17 14:15:01 +00:00
John Wellbelove
4f4d0b9d2e Updated version 2021-02-17 13:47:46 +00:00
John Wellbelove
d071acf02a Merge branch 'hotfix/bitset-iteration-error' into development 2021-02-17 11:26:37 +00:00
John Wellbelove
604bcdcf56 Fixed indexing error in find_next for etl::bitset.
Added some enum tests for type_traits
2021-02-17 11:26:14 +00:00
John Wellbelove
7eaf3e13a7 Interface for C string handling. 2021-02-17 09:02:04 +00:00
John Wellbelove
0ee3574a14 Added update_size() to string API to fix string lengths after insertion of characters by C code. 2021-02-15 13:36:31 +00:00
John Wellbelove
f145b53e80 Added non-const get_message() member funtions in shared message framework. 2021-02-14 11:42:36 +00:00
John Wellbelove
ae06e64177 Modified reference_counted_message_pool::allocate() return type 2021-02-12 20:23:51 +00:00
John Wellbelove
e799f37fac Modified reference_counted_message_pool::allocate() return type 2021-02-12 20:05:06 +00:00
John Wellbelove
463b4874f0 Updated version numbers 2021-02-12 14:04:15 +00:00
John Wellbelove
82b25ae9c7 Allow default constructed messages for shared messages 2021-02-12 13:59:39 +00:00
John Wellbelove
f4c13b186e Changed template aliases so they are available for C++11 rather than C++14. 2021-02-11 20:03:52 +00:00
John Wellbelove
f5da47aa7b Changed template aliases so they are available for C++11 rather than C++14. 2021-02-11 15:23:09 +00:00
John Wellbelove
a676076d84 Squashed commit of the following:
commit 97a6e6a03557359442123d439cef9bdf6dea2d1b
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Feb 7 11:02:49 2021 +0000

    Squashed commit of the following:

    commit 04ba91bcccc8e12867962bc3746665f430672a23
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sat Feb 6 10:43:34 2021 +0000

        Updated shared message unit test

    commit fababc5cf748073464b4294a50c201cb0aa4fa13
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Fri Feb 5 09:41:52 2021 +0000

        Updated FSM generator

    commit ff287bcf0a833ca70933354b42b8b036b422ff81
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Fri Feb 5 09:35:56 2021 +0000

        Updated message router generator

    commit 52724e1e62b55dad81e2f80dd656026d828b3214
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Thu Feb 4 13:06:50 2021 +0000

        Updated unit tests

    commit 0d89105262aa050577ccc17ddc6eece9f4fc5d18
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Feb 2 20:09:35 2021 +0000

        Interim commit

    commit ce8385ff24826103c7a55267ccf3f8a31f517e0b
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Feb 2 18:13:29 2021 +0000

        Squashed commit of the following:

        commit 007b56d03513887636b84fc246e57d6c4f8b777e
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Tue Feb 2 18:09:51 2021 +0000

            Squashed commit of the following:

            commit 6107c4538be149137209d85e5f41031291bc7150
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Tue Feb 2 12:15:31 2021 +0000

                Added move constructor and move assignment to etl::shared_message

            commit c9a5716012db9b614ea67660ebf64dcb790ce571
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:36:29 2021 +0000

                Squashed commit of the following:

                commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
                Author: John Wellbelove <github@wellbelove.co.uk>
                Date:   Sun Jan 31 12:34:49 2021 +0000

                    Squashed commit of the following:

                    commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
                    Author: John Wellbelove <github@wellbelove.co.uk>
                    Date:   Sun Jan 31 12:32:35 2021 +0000

                        Fixed rollover error for etl::queue_spsc_atomic

                        Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                        Updated QueuedMessageRouter example

        commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:34:49 2021 +0000

            Squashed commit of the following:

            commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:32:35 2021 +0000

                Fixed rollover error for etl::queue_spsc_atomic

                Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                Updated QueuedMessageRouter example

    commit c9a5716012db9b614ea67660ebf64dcb790ce571
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:36:29 2021 +0000

        Squashed commit of the following:

        commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:34:49 2021 +0000

            Squashed commit of the following:

            commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:32:35 2021 +0000

                Fixed rollover error for etl::queue_spsc_atomic

                Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                Updated QueuedMessageRouter example

commit 007b56d03513887636b84fc246e57d6c4f8b777e
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Feb 2 18:09:51 2021 +0000

    Squashed commit of the following:

    commit 6107c4538be149137209d85e5f41031291bc7150
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Feb 2 12:15:31 2021 +0000

        Added move constructor and move assignment to etl::shared_message

    commit c9a5716012db9b614ea67660ebf64dcb790ce571
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:36:29 2021 +0000

        Squashed commit of the following:

        commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:34:49 2021 +0000

            Squashed commit of the following:

            commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:32:35 2021 +0000

                Fixed rollover error for etl::queue_spsc_atomic

                Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                Updated QueuedMessageRouter example

commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Jan 31 12:34:49 2021 +0000

    Squashed commit of the following:

    commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:32:35 2021 +0000

        Fixed rollover error for etl::queue_spsc_atomic

        Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
        Updated QueuedMessageRouter example
2021-02-07 11:47:21 +00:00
John Wellbelove
ce8385ff24 Squashed commit of the following:
commit 007b56d03513887636b84fc246e57d6c4f8b777e
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Tue Feb 2 18:09:51 2021 +0000

    Squashed commit of the following:

    commit 6107c4538be149137209d85e5f41031291bc7150
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Tue Feb 2 12:15:31 2021 +0000

        Added move constructor and move assignment to etl::shared_message

    commit c9a5716012db9b614ea67660ebf64dcb790ce571
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:36:29 2021 +0000

        Squashed commit of the following:

        commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
        Author: John Wellbelove <github@wellbelove.co.uk>
        Date:   Sun Jan 31 12:34:49 2021 +0000

            Squashed commit of the following:

            commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
            Author: John Wellbelove <github@wellbelove.co.uk>
            Date:   Sun Jan 31 12:32:35 2021 +0000

                Fixed rollover error for etl::queue_spsc_atomic

                Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
                Updated QueuedMessageRouter example

commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Jan 31 12:34:49 2021 +0000

    Squashed commit of the following:

    commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:32:35 2021 +0000

        Fixed rollover error for etl::queue_spsc_atomic

        Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
        Updated QueuedMessageRouter example
2021-02-02 18:13:29 +00:00
John Wellbelove
c9a5716012 Squashed commit of the following:
commit e5f4eb6fb38c337c82fcc250f17a8f21eb788975
Author: John Wellbelove <github@wellbelove.co.uk>
Date:   Sun Jan 31 12:34:49 2021 +0000

    Squashed commit of the following:

    commit 23c5f1d3f9b13ff9e46ce3de96aefeb655d5ed97
    Author: John Wellbelove <github@wellbelove.co.uk>
    Date:   Sun Jan 31 12:32:35 2021 +0000

        Fixed rollover error for etl::queue_spsc_atomic

        Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
        Updated QueuedMessageRouter example
2021-01-31 12:36:29 +00:00
John Wellbelove
7bfdb53e0d Added enable_if for container iterator costructors, to exclude integrals from consideration 2021-01-29 11:33:50 +00:00
John Wellbelove
331a928f3b Updated version and release notes. 2021-01-27 21:06:58 +00:00
John Wellbelove
5473421694 Added virtual destructor to observer.
Changed C++11 destructors to '= default'.
2021-01-27 19:23:42 +00:00
John Wellbelove
20ada628a6 Refactored queues 2021-01-26 19:13:15 +00:00
John Wellbelove
2017b51dc3 Merge branch 'master' into development 2021-01-24 12:08:53 +00:00
John Wellbelove
78f957a1a8 Typo in unique_ptr 2021-01-24 12:03:16 +00:00
John Wellbelove
c015545bcb Added nullptr check to unique_ptr destructor. 2021-01-23 18:59:19 +00:00
John Wellbelove
d485cf6582 Merge branch 'master' into development
# Conflicts:
#	include/etl/deque.h
2021-01-23 18:39:08 +00:00
John Wellbelove
d8ad89c21b Added ilockable interface & queue_lockable 2021-01-23 14:13:55 +00:00
John Wellbelove
0f9e832708 Added nullptr check to unique_ptr destructor. 2021-01-23 14:12:22 +00:00
John Wellbelove
1069a83cc6 Added nullptr check to unique_ptr destructor. 2021-01-23 13:01:49 +00:00
John Wellbelove
2bb66c2e17 Merge branch 'hotfix/add-deleter-constructor-to-unique-ptr' 2021-01-23 12:59:40 +00:00
John Wellbelove
464cff6238 Added nullptr check to unique_ptr destructor 2021-01-23 12:58:57 +00:00
John Wellbelove
a40b49c174 Fixed VS2019 warning for etl::deque iterators. 2021-01-23 09:35:26 +00:00
John Wellbelove
656e27f3e3 Added ilockable interface class 2021-01-22 10:34:13 +00:00
John Wellbelove
cda53ca500 Merge branch 'hotfix/add-deleter-constructor-to-unique-ptr' into development 2021-01-21 18:29:55 +00:00
John Wellbelove
c3a055ea75 Fixed typos in rvalue constructor 2021-01-21 11:42:27 +00:00
John Wellbelove
694ff52fdb Merge branch 'hotfix/add-deleter-constructor-to-unique-ptr' into development 2021-01-21 10:39:46 +00:00
John Wellbelove
503b990514 Added constructors with deleters for unique_ptr. 2021-01-21 10:38:18 +00:00
John Wellbelove
66304646a5 Added lock/unlock interface 2021-01-20 14:07:27 +00:00
John Wellbelove
2e7c79ed38 Added reference_counted_message specialisation for void counter 2021-01-19 19:33:36 +00:00
John Wellbelove
0257275c3c Added shared_message example 2021-01-15 11:07:41 +00:00
John Wellbelove
472035d69f Added shared_message receive override to messge_bus 2021-01-15 09:49:49 +00:00
John Wellbelove
7e340f5e71 Removed pool_message and non_pool_message 2021-01-14 13:43:37 +00:00
John Wellbelove
212181a4be Merge branch 'master' into development
# Conflicts:
#	.gitignore
2021-01-14 09:31:24 +00:00
John Wellbelove
2c73fdf9ca Added virtual function 'void on_task_added()' that is called when a task is added to a shceduler. 2021-01-13 09:50:02 +00:00
John Wellbelove
6299163f45 Minor updates. 2021-01-10 20:41:13 +00:00
John Wellbelove
9f0f65b0b4 Renamed internal structure 2021-01-09 12:34:51 +00:00
John Wellbelove
e67d285862 Added static asserts 2021-01-08 19:53:48 +00:00
John Wellbelove
bd263e6510 Added final unit tests 2021-01-07 22:40:51 +00:00
John Wellbelove
2d612b0409 Ongoing addition of unit tests 2021-01-06 21:18:18 +00:00
John Wellbelove
0b2bf0e47c LLVM changes 2021-01-06 19:01:34 +00:00
John Wellbelove
db8841ff0d Updates to pools and memory allocators 2021-01-06 17:56:24 +00:00
John Wellbelove
b40349ca9d get_memory_block_size() const 2021-01-04 17:31:52 +00:00
John Wellbelove
f980ce2cd3 Merge branch 'feature/shared-objects-in-pools' into development
# Conflicts:
#	.gitignore
#	include/etl/deque.h
#	include/etl/file_error_numbers.txt
#	include/etl/generators/fsm_generator.h
#	include/etl/list.h
#	include/etl/memory.h
#	include/etl/pool.h
#	test/vs2019/etl.vcxproj.filters
2021-01-04 17:15:25 +00:00
John Wellbelove
5a274578bb Updated deque from development 2021-01-04 12:40:43 +00:00
John Wellbelove
f02a99cc0e Updated generators 2021-01-04 12:21:40 +00:00
John Wellbelove
3e8c2ca448 Fixed LGT8F macro name clash 2021-01-04 11:21:57 +00:00
John Wellbelove
fc48021849 message router changes 2021-01-03 20:24:38 +00:00
John Wellbelove
6e71e05877 Added fixed_sized_memory_block_pool and restored imemory_block_pool interface 2021-01-03 20:15:16 +00:00
John Wellbelove
3c2cb74524 Refactored reference_counted_message now contains owner reference 2021-01-03 12:18:34 +00:00
John Wellbelove
dc25df16db reference_counted_object and reference_counted_message specialisations 2021-01-02 19:42:27 +00:00
John Wellbelove
ecee02d41d reference_counted_object and reference_counted_message specialisations 2021-01-02 14:09:36 +00:00
John Wellbelove
cbf07b053c reference_counted_object and reference_counted_message specialisations 2021-01-02 13:39:59 +00:00
John Wellbelove
920dcdf4b6 Merged shared_message handlers into message_router 2021-01-02 12:35:13 +00:00
John Wellbelove
3cc95d6755 Interim commit
Refactor of reference counted types.
2021-01-01 20:26:01 +00:00
John Wellbelove
5abae28f16 Interim commit 2021-01-01 17:07:53 +00:00
John Wellbelove
eeb057a99d Moved code lines 2020-12-30 10:02:12 +00:00
John Wellbelove
35debe90eb Merge branch 'feature/add-multi-loop' into development
# Conflicts:
#	include/etl/functional.h
#	include/etl/multi_loop.h
#	test/test_functional.cpp
#	test/test_multi_range.cpp
2020-12-28 13:37:19 +00:00
John Wellbelove
92c68b1367 Refactor multi_loop to multi_range 2020-12-28 13:23:23 +00:00
John Wellbelove
aa148ac424 Latest implementation 2020-12-27 11:59:14 +00:00