252 Commits

Author SHA1 Message Date
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
John Wellbelove
6efad78028 Compatibility changes for GCC v5.4. 2019-06-23 09:54:02 +01:00
John Wellbelove
09d96e158e Added variadic parameters to observer notification. 2019-06-19 20:53:18 +01:00
John Wellbelove
fc317f3d9e Fix misplaced semicolon in error_handler.h 2019-06-17 23:13:38 +01:00
John Wellbelove
e0d2ca198b Updated version number 2019-06-06 18:03:13 +01:00
John Wellbelove
7515a60b69 Updated version number 2019-06-04 20:41:36 +01:00
John Wellbelove
70513ef678 Added #include <new> to files using 'placement new'. 2019-06-01 17:07:18 +01:00
John Wellbelove
c4d4e305c0 Simplified 'to_string' templates 2019-05-28 18:29:25 +01:00
John Wellbelove
82437c9bca Simplified message framework internal code.
Additional receive() virtual function overload taking destination id.
Removed is_bus() member function.
2019-05-27 12:01:06 +01:00
John Wellbelove
0df67fa154 Variadic template etl::smallest 2019-05-26 13:44:46 +01:00
John Wellbelove
2e998a6832 Fixed bug in 'vector of pointers' move constructor 2019-05-24 23:09:03 +01:00
John Wellbelove
a5fb2dfc99 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/delegate.h
#	include/etl/version.h
#	support/Release notes.txt
#	test/test_delegate.cpp
2019-05-22 20:21:07 +01:00
John Wellbelove
1b19c6c398 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	test/test_string_u16.cpp
#	test/test_string_u32.cpp
#	test/test_string_wchar_t.cpp
#	test/vs2017/etl.vcxproj.filters
2019-05-19 23:24:31 +01:00
John Wellbelove
4977f39a3b Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	support/Release notes.txt
#	test/test_string_char.cpp
2019-05-12 18:14:50 +01:00
John Wellbelove
b5ed7a8ff9 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/memory.h
#	include/etl/version.h
#	support/Release notes.txt
#	test/test_memory.cpp
2019-05-12 11:28:25 +01:00
John Wellbelove
4b048ec737 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/memory.h
#	include/etl/version.h
#	support/Release notes.txt
2019-05-07 21:45:15 +01:00
John Wellbelove
665c4591f2 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	support/Release notes.txt
2019-05-06 20:57:08 +01:00
John Wellbelove
09bc257d9f Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	support/Release notes.txt
2019-05-05 10:04:17 +01:00