569 Commits

Author SHA1 Message Date
John Wellbelove
d365abf681 Merge branch 'development' of https://github.com/ETLCPP/etl into development 2021-12-05 18:21:13 +00:00
John Wellbelove
6b91aaeb1d Merge branch 'development' of https://github.com/ETLCPP/etl into development 2021-12-05 15:54:33 +00:00
John Wellbelove
b9778190dc Updated version numbers 2021-11-21 12:35:30 +00:00
John Wellbelove
60e728a88f Update version numbers 2021-10-27 15:30:35 +01:00
John Wellbelove
4bedc041d4 Various updates 2021-10-12 17:52:51 +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
4e4c781e18 Updated versions 2021-10-04 20:00:45 +01:00
John Wellbelove
a6d8a6d1ef Updated version numbers 2021-09-27 14:06:47 +01:00
John Wellbelove
0754b3380e Updated versions 2021-09-21 11:09:34 +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
ed05c99a9c Updated version
Modified etl::result test
2021-09-05 15:03:55 +01:00
John Wellbelove
20f0599f84 Added missing #include for variant.
Updated version numbers
2021-08-28 09:18:30 +01:00
John Wellbelove
2ba3e2c5bd Fix for etl::mutex::try_lock() for GCC 2021-08-20 10:31:58 +01:00
John Wellbelove
963d91df43 Merge branch 'development' 2021-08-13 20:46:42 +01:00
John Wellbelove
09bfe1a9a2 Issue #413 Queue's pop_into copies rather than moves 2021-08-13 19:24:11 +01:00
John Wellbelove
417c3b9e77 Expanded compiled variants for scripts 2021-08-13 16:32: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
2056628b93 Updated version numbers 2021-08-10 10:49:32 +01:00
John Wellbelove
8181cec767 Updated version numbers 2021-08-10 10:49:10 +01:00
John Wellbelove
c868acaa9b Updated versions 2021-08-01 20:01:30 +01:00
John Wellbelove
fd89f51621 Type traits refactor 2021-07-29 11:34:16 +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
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
7bb438bf1b Added the option to derive etl::message<> from a custom parent class 2021-06-30 20:57:42 +01:00
John Wellbelove
d424ee7752 Updated Arduino examples 2021-06-29 11:49:57 +01:00
John Wellbelove
b1f771f6b4 Updated version numbers 2021-06-22 12:04:28 +01:00
John Wellbelove
e090f1a18c Define missing macro when cross compiling with clang 2021-06-18 14:38:12 +01:00
John Wellbelove
7f30a7cb8b etl::basic_string::copy is now const and does not affect the 'truncated' flag. 2021-06-17 13:42:49 +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
6f0b0a9809 Updated version numbers 2021-06-14 14:31:55 +01:00
John Wellbelove
0a7a131a43 Updated version numbers 2021-06-12 11:48:27 +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
fc6609276c Added container_type to etl::stack, etl::queue and etl::priority_queue. 2021-05-20 20:54:01 +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
161b27cb32 Updated versions 2021-05-10 17:42:53 +01:00
John Wellbelove
8a533485f0 Fixed incorrect histogram end() and cend() return values. 2021-04-27 18:21:44 +01:00
John Wellbelove
cf9d46810b HFSM documentation 2021-04-26 13:51:33 +01:00
John Wellbelove
b084913b3f Updated versions 2021-04-25 21:03:07 +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
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
John Wellbelove
ca92aaf91d Updated release notes 2021-04-13 14:38:34 +01:00
John Wellbelove
7a603dcb98 Corrected spelling of quantize 2021-04-11 14:38:57 +01:00
John Wellbelove
d0c5004dfb Updated version and release notes 2021-04-11 10:06:08 +01:00
John Wellbelove
86d7dea95f Updated version numbers 2021-03-31 14:31:55 +01:00
John Wellbelove
04ca833543 Updated version numbers 2021-03-26 17:32:27 +00:00
John Wellbelove
f6247239b9 Version number update 2021-03-15 12:15:52 +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
87bf9ce76d Updates to C++03 compatibility 2021-03-12 17:31:40 +00:00
John Wellbelove
38c07875b7 Remove unnecessary template keyword to destroy() call. 2021-03-10 18:24:03 +00:00
John Wellbelove
6b3311d6f1 Added ETL_CONSTEXPR to etl::array 2021-03-10 15:57:00 +00:00
John Wellbelove
4545e7627f Updated version numbers 2021-03-09 12:52:58 +00:00
John Wellbelove
430e385e4e Fix C++14 only type aliases for STL 2021-03-05 13:12:49 +00:00
John Wellbelove
1d179c9bde Fix extent error in clang and gcc 2021-03-01 18:51:23 +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
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
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
da4e7f33ec Updated version 2021-02-17 19:54:29 +00:00
John Wellbelove
c6bb73d7d0 Updated version 2021-02-17 19:54:28 +00:00
John Wellbelove
4f4d0b9d2e Updated version 2021-02-17 13:47:46 +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
463b4874f0 Updated version numbers 2021-02-12 14:04:15 +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
1069a83cc6 Added nullptr check to unique_ptr destructor. 2021-01-23 13:01:49 +00:00
John Wellbelove
a40b49c174 Fixed VS2019 warning for etl::deque iterators. 2021-01-23 09:35:26 +00:00
John Wellbelove
503b990514 Added constructors with deleters for unique_ptr. 2021-01-21 10:38:18 +00:00
John Wellbelove
0412615952 Update version number 2021-01-13 09:51:53 +00:00
John Wellbelove
e15ae4aa58 Added virtual function 'void on_task_added()' that is called when a task is added to a scheduler. 2021-01-13 09:50:33 +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
3e8d39dae5 Merge branch 'hotfix/fcs_make_getter_const' into development 2020-12-20 19:54:39 +00:00
John Wellbelove
febb4de79a Updated version numbers 2020-12-20 17:55:27 +00:00
John Wellbelove
e890e3782e Arduino compatibility 2020-12-20 16:43:49 +00:00
John Wellbelove
7fd73fe96d Change std::move to etl::move in etl::forward_list 2020-12-16 08:47:39 +00:00
John Wellbelove
d7daf59a5b Updated version numbers 2020-12-10 11:35:15 +00:00
John Wellbelove
4d1f56bf9e Merge branch 'hotfix/issue-303-etl-not-compatible-with-arduino-ide' into development
# Conflicts:
#	support/Release notes.txt
#	test/vs2019/etl.vcxproj.filters
2020-12-08 12:14:36 +00:00
John Wellbelove
41dbae73b2 Updated generators 2020-12-08 12:11:54 +00:00
John Wellbelove
8cf7ab2974 Updated generators 2020-12-08 11:39:26 +00:00
John Wellbelove
fbfd8ac6a4 Added clang mutex header redirect to GCC implementation 2020-12-05 14:32:00 +00:00
John Wellbelove
6cf6c92b05 Updated version numbers 2020-12-04 12:23:02 +00:00
John Wellbelove
4bcd734dad Added ETL_ASSERT for out-of-order state list. 2020-12-02 13:45:07 +00:00
John Wellbelove
fad6e4d800 Updated version numbers 2020-12-01 13:19:44 +00:00
John Wellbelove
b40431f998 Fixed version number retrieval from Github 2020-11-27 18:29:08 +00:00
John Wellbelove
4e4aed118a Updated version numbers 2020-11-27 09:13:49 +00:00
John Wellbelove
d33d32be23 Refactor of etl::buffer_descriptors interface 2020-11-23 12:33:04 +00:00
John Wellbelove
cfb38b2737 vector_ext 2020-11-21 11:36:13 +00:00
John Wellbelove
af9c640fa7 Updated version numbers 2020-11-19 11:18:36 +00:00
John Wellbelove
a90fde9cfb Updated notes 2020-11-18 18:36:30 +00:00
John Wellbelove
39a3f77ed4 Disabled ASAN option in Visual Studio project. 2020-11-17 13:03:11 +00:00
John Wellbelove
580512d71d 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
2020-11-12 19:13:10 +00:00
John Wellbelove
76850b7037 Updated version numbers 2020-11-04 20:49:35 +00:00
John Wellbelove
7645fd1359 Updated version numbers 2020-11-01 12:15:30 +00:00
John Wellbelove
3c3e527a03 Updated versions 2020-10-31 11:44:21 +00:00
John Wellbelove
771d697e31 Modified strings for better memory efficiency. String truncation detection and clear-after-use can be disabled.
Added ETL_DISABLE_STRING_TRUNCATION_CHECKS macro check in platform.h.
Added ETL_DISABLE_STRING_CLEAR_AFTER_USE macro check in platform.h.
Added etl::flags to wrap boolean flag functionality.
Four parameter equal() algorithm variant added.
Modified is_pod definition when using the STL.
Added are_all_same trait.
2020-10-30 18:30:13 +00:00
John Wellbelove
cc05b1df52 Change to array_view member variable declaration, for constructor from array 2020-10-24 10:36:02 +01:00
John Wellbelove
197f11b6b3 Updated vesrion 2020-10-23 20:31:44 +01:00
John Wellbelove
957d0fdd89 Updated vesrion 2020-10-23 13:30:37 +01:00
John Wellbelove
bc671299b0 Added missing emplace functions from vector-of-pointers specialisation. 2020-10-21 13:22:34 +01:00
John Wellbelove
9c8156083b Fixed incorrect reflected CRC8 0x07 lookup table.
Added unit tests for CRC8-ROHC
2020-10-11 19:53:38 +01:00
John Wellbelove
26b0f84439 Merge branch 'development'
# Conflicts:
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
2020-10-07 11:25:40 +01:00
John Wellbelove
5d4d111671 Added iterator API to all etl::frame_check_sequence based template classes, such as CRCs and checksums 2020-10-07 11:06:10 +01:00
John Wellbelove
db9e39a64b Add missing include in test etl_profile.h 2020-10-04 19:00:37 +01:00
John Wellbelove
0180a7c9bd Reduced warnings from cppcheck v2.2 2020-10-04 14:24:52 +01:00
John Wellbelove
0bd0067022 Merge branch 'feature/github-actions-for-windows-compilers' into development
# Conflicts:
#	.github/workflows/clang.yml
#	CMakeLists.txt
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
#	test/vs2019/etl.vcxproj
#	test/vs2019/etl.vcxproj.filters
2020-10-02 18:18:20 +01:00
John Wellbelove
1a90c1e3d1 Updates to CI configuration files to compile 'No STL' variants of the tests. 2020-09-30 11:19:10 +01:00
John Wellbelove
df23e2d750 Conditionally disable template deduction guide tests 2020-09-30 11:19:08 +01:00
John Wellbelove
e337689ed0 Conditionally disable template deduction guide tests 2020-09-29 13:15:37 +01:00
John Wellbelove
509089c0e2 Added template deduction guides 2020-09-28 13:14:12 +01:00
John Wellbelove
04c479279e Refactored empty(), full(), available() member functions for etl::list and etl::forward_list 2020-09-27 12:47:20 +01:00
John Wellbelove
adf6243de6 Performance optimisations for etl::rotate, etl::move & etl::move_backward
when not using the STL, iterators are pointers and the objects are trivially copyable (currently POD types).
2020-09-24 23:19:33 +01:00
John Wellbelove
5544633c39 etl::array_view constructor from C array is no longer explicit 2020-09-22 17:54:46 +01:00
John Wellbelove
3eeeb5d5f6 segger-multiple-prevailing-defs-for-invocation' into development 2020-09-22 10:18:08 +01:00
John Wellbelove
c38d2db118 array_view-not-explicit 2020-09-22 09:30:06 +01:00
John Wellbelove
fa25f02bb1 Refactoring of 18.15.0.
Modified constructor syntax.
2020-09-19 10:31:44 +01:00
John Wellbelove
f6ce3f59bd Allow strings with external buffers to use a pre-initialised buffer. 2020-09-15 19:51:06 +01:00
John Wellbelove
2abc4ee962 Fixed conditional compilation macro use for template deduction guides 2020-09-12 13:55:09 +01:00
John Wellbelove
14d1b96c64 Added template deduction guides for array and array_view 2020-09-10 13:07:04 +01:00
John Wellbelove
d234d5ce0d Added a line coordinate generator using the Bresenham algorithm. 2020-08-30 11:20:00 +01:00
John Wellbelove
3a203a9754 Make etl::reference_wrapper API closer to the STL version. Does not support invocation of a callable object. 2020-08-28 16:14:28 +01:00
John Wellbelove
f2d6df5944 Fixed etl::stack top level assignment operator not clearing before copy 2020-08-27 18:40:05 +01:00
John Wellbelove
f339e8d3da Fixed issue for incorrect operation of erase(const_iterator, const_iterator)
when the terminating iterator was end() for etl::unordered_map, etl::unordered_multimap, etl::unordered_set and etl::unordered_multiset.
2020-08-15 21:00:18 +01:00
John Wellbelove
254a8d4035 String stream test << operator in etl namespace 2020-08-08 13:50:05 +01:00
John Wellbelove
bd578b6e77 Resolve 0U ambiguity in string utility tests 2020-08-02 15:14:52 +01:00
John Wellbelove
bd392b400c Updated version numbers 2020-08-02 14:36:51 +01:00
John Wellbelove
72eb5817f2 Fixed compiler compatibility issues in etl::forward_list and etl::list 2020-08-02 10:50:04 +01:00
John Wellbelove
c83ac6dcb5 Merge branch 'feature/string-utilities' into development 2020-08-01 16:21:41 +01:00
John Wellbelove
c80f30e990 Recoded string utility get_token() 2020-08-01 14:18:51 +01:00
John Wellbelove
40fc617466 Fix and optimise etl::list and etl::forward_list shared pool move constructors and assignment operators. 2020-07-30 12:52:40 +01:00
John Wellbelove
8f0199c789 Added etl::ibitset::span() member functions to return a span of the underlying binary data.
Moved image resources
2020-07-27 10:52:07 +01:00
John Wellbelove
923ac42b96 Updated version numbers 2020-07-26 13:25:50 +01:00
John Wellbelove
997eb85f75 Added enable/disable observer interface to observable class 2020-07-25 16:57:02 +01:00
John Wellbelove
8d60eb5e0e Fixed incorrect return in find() and at() for non-existent key. 2020-07-20 19:55:19 +01:00
John Wellbelove
05647e5256 Fix C++03 error_handler compatibility 2020-07-20 10:14:28 +01:00
John Wellbelove
2cf00a0ba4 Re-coded string utilities to allow any string-like container to use it. 2020-07-18 20:18:32 +01:00
John Wellbelove
0a1b49c8f8 Removed to_upper_case, to_lower_case & to_sentence_case from wstring_utilities, u16string_utilities & u32string_utilities 2020-07-17 11:31:06 +01:00
John Wellbelove
f48cafd007 Updated version numbers 2020-07-16 11:26:40 +01:00
John Wellbelove
509a930b55 Added stream manipulators 2020-07-09 14:21:40 +01:00
John Wellbelove
3e2352770b string streams 2020-07-05 20:55:14 +01:00
John Wellbelove
a27508ca96 Refactored etl::error_handler to use etl::delegate style implementation.
Allows set_callback() function to be given run-time and compile-time pointers to free and member functions without using etl::ifunction.
2020-06-26 10:48:14 +01:00
John Wellbelove
eabe328398 Changed std::move to etl::move in std::optional and std::queue
Fixed etl::span subspan with etl::dynamic_extent
2020-06-18 16:55:27 +01:00
John Wellbelove
d21be04f66 Fixed type traits C++03 compatibility 2020-06-04 19:15:09 +01:00
John Wellbelove
dda5aa09fa Removed surplus 'typename T' in pool create() for C++03 2020-05-28 11:12:15 +01:00
John Wellbelove
f8fbb119f7 C++03 compatibility changes for type_traits.h 2020-05-27 11:57:41 +01:00
John Wellbelove
7827909a82 Added etl::parameter_pack 2020-05-23 16:19:39 +01:00
John Wellbelove
0bfc97a914 Variadic versions of etl::type_id_lookup and etl::type_type_lookup for C++11 and above. 2020-05-19 20:12:12 +01:00
John Wellbelove
d7dd2ca1b4 Updated versions 2020-05-12 23:39:15 +01:00
John Wellbelove
638d6ac8e6 Updated version 2020-05-12 10:39:35 +01:00
John Wellbelove
e39554e36c Updated version numbers 2020-05-11 14:46:47 +01:00
John Wellbelove
d55695e3d4 Strings may use external buffers if the 'max size' template parameter is zero. 2020-05-09 12:47:55 +01:00
John Wellbelove
06860eb840 Fixed 'insert to empty container' bug for deque 2020-05-05 15:47:24 +01:00
John Wellbelove
e6179fdb5b Updated release notes 2020-04-30 13:56:54 +01:00
John Wellbelove
380da33ff1 Updated version numbers 2020-04-30 12:54:15 +01:00
John Wellbelove
c385f3ce1c Modified etl::delegate for better lambda support.
Added etl::is_class to type_traits.h
Added missing return statement in etl::move_iterator in 'operator ='
Added upport for compilers that do not support LDBL_xxx macros
2020-04-29 20:05:47 +01:00
John Wellbelove
548345cf8c Modified etl::delegate for better lambda support.
Added etl::is_class to type_traits.h
Added missing return statement in etl::move_iterator in 'operator ='
Added upport for compilers that do not support LDBL_xxx macros
2020-04-29 17:29:44 +01:00
John Wellbelove
3cd9be0c2a Added check for NAN, nan(), nanf() or nanl() support. 2020-04-28 14:23:40 +01:00
John Wellbelove
b42d7fc6fa Spelling 2020-04-20 11:48:28 +01:00
John Wellbelove
fda323b837 Added determine_development_os.h to platform.h to attempt to automatically deduce the OS that the developer is using.
Added subsequent changes to unit test's etl_profile.h
Removed CMakeLists.txt that auto selected profiles header (this should be done in the project's etl_profile)
Removed profiles/etl_profile.h
Added missing tests to unit test's CMakelists.txt
2020-04-20 09:05:22 +01:00
John Wellbelove
cdeef0fecc Updated message router and FSM
Deprecated is_null_router(), added is_producer() and is_consumer()
2020-04-14 10:12:52 +01:00
John Wellbelove
b54ab99483 Changed etl::move to etl::forward in etl::make_pair
Added implicit conversions between etl::pair and std::pair
2020-04-13 18:39:56 +01:00
John Wellbelove
5332cffe44 Add message producer 2020-04-10 15:17:07 +01:00
John Wellbelove
7df68346aa Make etl::array_view immutable by default 2020-04-10 11:20:01 +01:00
John Wellbelove
8171fe3784 Modified etl::message_packet to allow default construction, copy/move construction and copy/move assignment. 2020-04-09 14:17:35 +01:00
John Wellbelove
afa10ea187 Changed local 'work' variables from uint_least8_t to uint32_t to avoid possible overflow.
Fixed miss-spelt scheduler policies. Typedef'd old names for backwards compatibility.
2020-04-08 09:59:57 +01:00
John Wellbelove
788f8dbdb8 Make etl::span::subspan functions compatible with C++11 constexpr 2020-04-02 12:57:56 +01:00
John Wellbelove
492d78b9b1 Removed double definition of default: case in switch. 2020-04-02 11:05:33 +01:00
John Wellbelove
7b61eec2a6 Added etl::span 2020-04-01 15:11:07 +01:00
John Wellbelove
9ce2710ef8 Updated version number 2020-03-31 13:22:45 +01:00
John Wellbelove
a108addf84 Added move API to unordered map and set containers.
Added a 'move' member function that moves items into the containers.
2020-03-30 18:05:33 +01:00
John Wellbelove
0158031214 Created scheduler example project. 2020-03-29 14:55:19 +01:00
John Wellbelove
2d77b63de3 Created CMakeLists.txt files for QueuedFSM and QueuedMessageRouter example projects. 2020-03-29 13:40:13 +01:00
John Wellbelove
bff480b9a2 Removed ETL's implementation of nullptr for pre C++11 compilers.
Created the macro ETL_NULLPTR for internal use. Equates to NULL or nullptr, dependent on the compiler version and project profile.
Added partial compile time versions of binary_fill and has_zero_byte.
2020-03-28 19:16:55 +00:00
Tom
5cc55527f1
Two cpp98 fixes (#206)
* C++98/03 compatibility changes

* Added support for nullptr == and != for cpp98

* This default type made problem in cpp98

Co-authored-by: John Wellbelove <github@wellbelove.co.uk>
2020-03-28 08:29:05 +00:00
John Wellbelove
d59f53fe25 C++98/03 compatibility changes 2020-03-27 13:11:17 +00:00
John Wellbelove
c90c7967c6 Added etl::message_packet classes 2020-03-23 19:49:24 +00:00
John Wellbelove
8a116bc46d Fix C++03 compatibility issues in memory.h and utility.h 2020-03-20 20:03:42 +00:00
John Wellbelove
a06332f163 Updates to make unique_ptr similar to std::unique_ptr
Fixed unique_ptr swap() compilation issue
Added mutex for FreeRTOS
2020-03-19 17:59:45 +00:00
John Wellbelove
1eccbdbbbe etl::exchange modified for better C++03 compatibility 2020-03-19 10:37:03 +00:00
John Wellbelove
582aa051c5 rvalue reference support for heap functions and etl::priority_queue 2020-03-18 19:51:41 +00:00
John Wellbelove
c5ee3ec0ab Merge remote-tracking branch 'origin/hotfix/type_traits_is_rvalue_reference' into development
# Conflicts:
#	include/etl/type_traits.h
2020-03-18 14:32:00 +00:00
John Wellbelove
cc09b2b3f3 Removed redundant includes 2020-03-17 19:26:48 +00:00
John Wellbelove
4c13a17e2f Update release notes 2020-03-15 18:00:51 +00:00
John Wellbelove
aa80ddfccb Updated version number 2020-03-02 21:30:36 +00:00
John Wellbelove
f20969ea40 Added #if ETL_CPP11_SUPPORTED around etl::is_rvalue_reference 2020-02-26 19:47:36 +01:00
John Wellbelove
e3f665d3b2 Moved definition of swap to utility 2020-02-24 10:32:41 +01:00
John Wellbelove
5cdcc8d4c6 Fix etl::pair error and warning 2020-02-18 10:45:09 +01:00
John Wellbelove
e6617dc7e7 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
2020-02-12 09:40:20 +01:00
John Wellbelove
9dd88e1885 Merge remote-tracking branch 'origin/development' 2020-02-11 13:27:43 +01:00
John Wellbelove
b80763e644 Fixed incorrect ETL_ALWAYS_ASSERT in etl::callback_timer 2020-01-29 17:38:02 +00:00
John Wellbelove
a1a0391282 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
2020-01-15 16:32:01 +00:00
John Wellbelove
282655259f Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
2020-01-14 17:54:56 +00:00
John Wellbelove
8a99a2725c Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
2020-01-14 12:46:17 +00:00
John Wellbelove
af5a760d5d Merge remote-tracking branch 'origin/development' 2020-01-14 11:57:04 +00:00
John Wellbelove
6ad77153be Final changes 2020-01-10 14:01:33 +00:00
John Wellbelove
d6f8b69326 Merge remote-tracking branch 'origin/feature/determine_compiler_versions' into development
# Conflicts:
#	examples/ArmTimerCallbacks - C++/ArmTimerCallbacks.uvprojx
#	examples/ArmTimerCallbacks - C++/main.cpp
#	include/etl/algorithm.h
#	include/etl/platform.h
#	include/etl/stl/alternate/limits.h
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
#	test/codeblocks/ETL.cbp
#	test/etl_profile.h
#	test/vs2017/etl.vcxproj
#	test/vs2017/etl.vcxproj.filters
2019-12-27 12:57:34 +00:00
John Wellbelove
41fc53c805 Updated version number 2019-12-22 21:26:20 +00:00
John Wellbelove
3382ed03a3 Move ETL_NODISCARD definition to ETL_CPP17_SUPPORTED test 2019-12-18 10:09:57 +00:00
John Wellbelove
7e5a4e1efe Merge remote-tracking branch 'origin/crc-ccitt-xmodem' into development
# Conflicts:
#	README.md
2019-12-12 12:19:05 +00:00
John Wellbelove
703fe0f92b Changes to alternate STL limits.h for ARM5 compiler compatibility 2019-12-11 12:57:50 +00:00
John Wellbelove
3649f839f5 Merge remote-tracking branch 'origin/feature/make_string_with_capacity' into development
# Conflicts:
#	include/etl/cstring.h
#	include/etl/u16string.h
#	include/etl/u32string.h
#	include/etl/wstring.h
2019-12-06 12:39:31 +00:00
John Wellbelove
727596b6ed Merge remote-tracking branch 'origin/feature/etl__make_string' into development
# Conflicts:
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
2019-12-04 20:55:18 +00:00
John Wellbelove
792cb7bcc8 Merge remote-tracking branch 'origin/feature/no_stl_unit_tests' into development
# Conflicts:
#	include/etl/private/choose_pair_types.h
#	include/etl/private/choose_tag_types.h
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
2019-12-02 12:05:27 +00:00
John Wellbelove
5803d928a1 Merge remote-tracking branch 'origin/feature/no_stl_unit_tests' into development
# Conflicts:
#	include/etl/stl/alternate/algorithm.h
#	include/etl/stl/alternate/iterator.h
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
#	test/test_no_stl_algorithm.cpp
#	test/test_no_stl_iterator.cpp
#	test/vs2017/etl.vcxproj
2019-12-01 18:21:10 +00:00
John Wellbelove
2591d49845 Merge remote-tracking branch 'origin/hotfix/reverse_iterator_missing_equality_operator' into development 2019-11-28 20:37:28 +00:00
John Wellbelove
00431999d9 Added reverse_iterator unit tests
Fixed missing equality operator for reverse_iterator.
2019-11-28 20:36:58 +00:00
John Wellbelove
0196f255b5 Retrospective update 2019-11-27 11:08:22 +00:00
John Wellbelove
f584e086f1 Added missing C++11 conditional compilation in callback_timer.h 2019-11-27 10:40:12 +00:00
John Wellbelove
afeb63575e Added missing C++11 conditional compilation in callback_timer.h 2019-11-27 10:35:41 +00:00
John Wellbelove
cbdc8a9299 Updated version numbers 2019-11-26 10:57:45 +00:00
John Wellbelove
db87c66070 Updated version numbers 2019-11-24 13:23:40 +00:00
John Wellbelove
906a56aa6a Fixes to the return value of copy and copy_n 2019-11-21 21:01:04 +00:00
John Wellbelove
7a4c74f8df Fix LLVM & GCC highlighted error for initialisation order. 2019-11-16 19:06:30 +00:00
John Wellbelove
4dd4574743 Added 'from_string' functions.
Added 'value' functions.
2019-11-05 15:53:05 +00:00
John Wellbelove
5840a4b005 multimap and multiset erase bug fix 2019-11-05 12:20:17 +00:00
John Wellbelove
2281a159aa Updated versions 2019-11-05 09:15:15 +00:00
John Wellbelove
c0ca7c9d87 Add assert check for uninitialised delegate call 2019-11-04 12:27:16 +00:00
John Wellbelove
52975b209f Fixed incorrect result when rounding up to integral part. 2019-10-31 14:33:58 +00:00
John Wellbelove
e5325aa379 Fixed incorrect result for negative float to string 2019-10-11 18:35:58 +01:00
John Wellbelove
512ab6338d Changed STL alternate namespace to always be 'etlstd'.
Changed std:: to ETLSTD:: macro to select std:: or etlstd:: depending on existence of ETL_NO_STL.
2019-10-10 11:12:35 +01:00
John Wellbelove
5a8c653004 Fixed strict aliasing bug for -O3 optimisation in etl::pool 2019-10-09 10:35:13 +01:00
John Wellbelove
f277020fa0 Fix alternate STL utility.h for ARM6
Added ARM7 profiles.
2019-09-30 10:05:01 +01:00
John Wellbelove
f1fd87de05 Updated unit test project to support C++17 2019-09-28 12:11:46 +01:00
John Wellbelove
e94d088d5f Added Platform IO examples 2019-09-26 07:29:46 +01:00
John Wellbelove
f49c07b91c More PIO json tweaks 2019-09-24 10:39:18 +01:00
John Wellbelove
646af4b318 Fixed JSON errors 2019-09-23 19:44:36 +01:00
John Wellbelove
0f35e3c384 Removed ECL
Updated properties and json files
Updated versions
2019-09-22 10:39:00 +01:00
John Wellbelove
188647667d Allow conan's etl version metadata to automatically update via git tags 2019-09-19 10:59:53 +01:00
John Wellbelove
31161040e7 Fixed unordered_map iterator operator* return type 2019-09-16 15:59:46 +01:00
John Wellbelove
2bc97e5022 Small updates to etl::delegate 2019-08-18 10:05:55 +01:00
John Wellbelove
54761ade12 Fixed incorrect results from increment/decrement pointers in atomic_gcc_sync 2019-08-03 20:50:36 +01:00
John Wellbelove
26729ba43b Added #include "stl/utility.h" to etl::optional 2019-08-03 13:12:52 +01:00
John Wellbelove
35c00ce9ed Added const parameters to etl::array_view 2019-07-31 18:30:40 +01:00
John Wellbelove
419c5b31c4 Removed redundant etl::const_array_view 2019-07-26 16:20:55 +01:00
John Wellbelove
b07e41b3cc Spelling 2019-07-13 12:48:46 +01:00
John Wellbelove
c43620d8d8 Various fixes.
void assign(const_pointer, size_t) did not set the truncation flag.
Fixed resize(0) error for etl::fixed_list
Removed erroneous pointers in etl::unordered_map::begin()
2019-07-13 12:33:52 +01:00
John Wellbelove
f3959810cb Optimisation of floating point specialisations of etl::cumulative_moving_average. 2019-07-07 16:35:34 +01:00
John Wellbelove
9fbbb5cc19 Added runtime sample size specialisations to etl::cumulative_moving_average 2019-07-05 13:49:38 +01:00
John Wellbelove
d715880d37 Removed ETL_IF_CONSTEXPR from etl::message_timer 'tick()' 2019-07-02 12:51:00 +01:00
John Wellbelove
8f29bb8862 ETL's random number generators are now non-polymorphic by default.
Define ETL_POLYMORPHIC_RANDOM to enable previous functionality.
2019-07-01 10:31:02 +01:00
John Wellbelove
fd689b437d Moved global operators to ETL namespace. 2019-06-29 08:01:04 +01:00