767 Commits

Author SHA1 Message Date
John Wellbelove
365c719fbf Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/basic_format_spec.h
#	include/etl/private/to_string_helper.h
#	include/etl/to_string.h
#	include/etl/to_u16string.h
#	include/etl/to_u32string.h
#	include/etl/to_wstring.h
#	include/etl/version.h
#	support/Release notes.txt
2019-04-14 19:43:09 +01:00
John Wellbelove
8d46963bb0 Merge remote-tracking branch 'origin/develop'
# Conflicts:
#	include/etl/format_spec.h
#	include/etl/private/to_string_helper.h
#	include/etl/to_string.h
#	include/etl/to_u16string.h
#	include/etl/to_u32string.h
#	include/etl/to_wstring.h
#	include/etl/version.h
#	support/Release notes.txt
#	test/test_to_string.cpp
#	test/test_to_u16string.cpp
#	test/test_to_u32string.cpp
#	test/test_to_wstring.cpp
#	test/vs2017/etl.vcxproj.filters
2019-04-09 08:21:28 +01:00
John Wellbelove
7844142c19 Merge remote-tracking branch 'origin/feature/to_string' into development
# Conflicts:
#	include/etl/version.h
#	support/Release notes.txt
#	test/vs2017/etl.vcxproj.filters
2019-04-08 19:37:41 +01:00
John Wellbelove
7c77bc80b2 Added C++11 variadic template version of etl::observer 2019-03-30 10:40:19 +00:00
John Wellbelove
55dda4ea9d Updated version 2019-03-30 10:04:22 +00:00
John Wellbelove
b3ab699cee Added C++11 variadic template version of etl::visiable and etl::visitor 2019-03-30 09:59:44 +00:00
John Wellbelove
2b7887e9f0 Updated version number 2019-03-28 21:25:55 +00:00
John Wellbelove
aa286a5126 Merge remote-tracking branch 'origin/feature/vector_external_buffer' into development 2019-03-28 21:23:13 +00:00
John Wellbelove
2a3f32b47c External buffer support for vector 2019-03-28 21:22:39 +00:00
John Wellbelove
d2200d80d8 Extended 'truncate' flag rules. 2019-03-23 14:24:39 +00:00
John Wellbelove
6e72c5beca Removed test for self in += operator. 2019-03-21 21:01:27 +00:00
John Wellbelove
f03359790a Modified 'truncated' to only be cleared on 'clear()' or 'assign()'.
Added assignment from zero terminated string pointer.
2019-03-21 20:45:28 +00:00
John Wellbelove
9b0fd374d1 Merge remote-tracking branch 'origin/master' into feature/vector_external_buffer 2019-03-17 22:27:03 +00:00
John Wellbelove
92989feda9 Fixed setting of 'truncated' 2019-03-17 17:49:25 +00:00
John Wellbelove
150fdf7f54 Partial updates 2019-03-13 21:24:42 +00:00
John Wellbelove
54330998af Added truncate clear to Clear() 2019-03-13 15:51:05 +00:00
John Wellbelove
3f5de324c5 Partial unit test updates 2019-03-13 15:51:04 +00:00
John Wellbelove
c7ea481274 Partial implementation of vector of pointers 2019-03-10 20:13:46 +00:00
John Wellbelove
496edaf981 Partial implementation 2019-03-10 16:05:36 +00:00
John Wellbelove
a630d66c33 Fixed string push_back bug where the internal terminator was not updated. 2019-03-06 22:22:10 +00:00
Arek Sredzki
92fddd7e42 Add const ref istring constructors (#119) 2019-03-01 19:31:54 +00:00
John Wellbelove
36fe9a4d2d Modifies parameters to 'const' 2019-02-26 19:57:15 +01:00
John Wellbelove
752191e819 Updated profiles for C++17 2019-02-26 10:00:21 +01:00
John Wellbelove
8cfb3fce23 Added queue_spsc_locked with injected lock and unlock functionality. 2019-02-25 09:42:51 +01:00
John Wellbelove
ab91c7af33 Revert "Modified ISR queue to take references to etl::ifunction instances at runtime rather than static class at compile time."
This reverts commit 4aab7c017302b446f87037e25430167a80d9b749.
2019-02-25 09:02:12 +01:00
John Wellbelove
4aab7c0173 Modified ISR queue to take references to etl::ifunction instances at runtime rather than static class at compile time. 2019-02-25 08:45:53 +01:00
John Wellbelove
f0fcb78e24 Enabled emplace functions for C++03 2019-02-24 10:04:13 +01:00
John Wellbelove
fd50e7e385 Move C++03 force macros to profile 2019-02-23 08:36:07 +01:00
creibetanz
059159fe1f function.h add const to operator () (#117)
Change-Id: Id70a05ab1bfdb95499a3c6622379c8bb639f5f40
2019-02-20 08:57:52 +00:00
John Wellbelove
9803bf8bde Fix inconsistent ETL_FILE definitions 2019-02-18 19:32:02 +01:00
John Wellbelove
e241544290 Fixed C++03 macros leftover from testing 2019-02-15 10:43:21 +01:00
John Wellbelove
3a389a9d96 Created C++03 Code::Blocks project as a quick check for C++03 syntax compatibility. 2019-02-14 14:48:31 +01:00
John Wellbelove
55ed3640b2 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	support/Release notes.txt
2019-02-14 12:54:28 +01:00
John Wellbelove
6aa0d0a3a5 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	support/Release notes.txt
2019-02-13 20:37:28 +01:00
John Wellbelove
87d73bf602 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	support/Release notes.txt
2019-02-13 11:29:02 +01:00
chodimka
48a2a4fd8d atomic_std: removed extra ';' semicolon after namespace (#114) 2019-02-12 18:25:42 +00:00
John Wellbelove
c4937c4b73 Merge remote-tracking branch 'origin/development' 2019-02-11 12:36:46 +01:00
John Wellbelove
dac7922df9 Merge remote-tracking branch 'origin/feature/cpp03_check' into development 2019-02-11 12:36:14 +01:00
John Wellbelove
6b3788de98 C++03 check project 2019-02-11 12:33:33 +01:00
John Wellbelove
d5b988a6a9 Added ETL_NOEXCEPT macros.
Added std::forward support to alternate STL utility header.
2019-02-11 11:09:06 +01:00
John Wellbelove
ce9ce69078 Renamed ETL_NO_EXCEPT to ETL_NOEXCEPT 2019-02-11 11:03:11 +01:00
John Wellbelove
d60dc6e05e Added NO_EXCEPT macros.
Added std::forward to alternate 'No STL' utility header.
2019-02-11 10:51:11 +01:00
John Wellbelove
92d5aab61b Added constexpr to constructors and copy constructors. 2019-02-10 10:54:54 +00:00
John Wellbelove
cf9ec9763e Added missing header include to frame_check_sequence.h 2019-02-10 09:31:36 +00:00
John Wellbelove
5b8345106e Fix vector insert for certain operations 2019-02-08 17:51:10 +00:00
John Wellbelove
047398f838 Version & release notes.
Optimised internal 'unhandled' declaration.
2019-02-04 21:06:30 +00:00
John Wellbelove
65e8a981e3 Added const to template parameter 2019-02-03 20:31:14 +00:00
John Wellbelove
df56f94815 Added OFFSET template parameter 2019-02-03 20:29:40 +00:00
John Wellbelove
2cef994d5b Changed from static to normal class 2019-02-03 10:24:47 +00:00
John Wellbelove
4c713d38f0 Callback service 2019-02-02 19:37:23 +00:00
John Wellbelove
a9d679edaf Added #include <new> to message_router.h for improved cross platform compatibility. 2019-01-27 20:19:30 +00:00
John Wellbelove
95dda918f8 Reverted partial changes 2019-01-06 19:09:51 +00:00
Bo Rydberg
349db3aacd Update flat_map.h to handle C++98 compilation (#112) 2019-01-06 18:52:59 +00:00
John Wellbelove
4aea7626ca C++03/C++11 compatibility fixes. 2019-01-06 17:49:40 +00:00
Bo Rydberg
aa3996b38d Update vector.h to handle C++11 (#109)
* Merge remote-tracking branch 'origin/development'

* Update vector.h to handle C++11
2019-01-06 17:29:07 +00:00
Bo Rydberg
4b7d832590 Update memory.h to handle C++11 (#110)
* Merge remote-tracking branch 'origin/development'

* Update memory.h to handle C++11
2019-01-06 17:25:13 +00:00
Bo Rydberg
6c141f3621 Update list.h to recognize C++11 mode (#111)
* Merge remote-tracking branch 'origin/development'

* Update list.h to recognize C++11 mode
2019-01-06 17:13:29 +00:00
John Wellbelove
4edd4e451e Updated version & release notes 2019-01-05 12:01:36 +00:00
John Wellbelove
48379a8ff2 Merge branch 'development' into feature/rvalue-references 2019-01-05 11:34:24 +00:00
John Wellbelove
96ce602874 Added interface move assignment. 2019-01-01 14:03:02 +00:00
John Wellbelove
6b165aee54 Added interface move assignment. 2019-01-01 14:02:43 +00:00
John Wellbelove
48aabaad54 Added interface move assignment.
Added move splice & merge.
2019-01-01 14:02:08 +00:00
John Wellbelove
5e199b6bb4 Added is_rvalue_reference 2018-12-30 11:17:17 +00:00
John Wellbelove
05bc2b83b5 Added move member functions 2018-12-30 11:16:52 +00:00
John Wellbelove
dc6f6796f6 Added move constructor & move assignment 2018-12-30 11:16:33 +00:00
John Wellbelove
ca81392075 Added move constructor and assignment operator 2018-12-29 20:56:37 +00:00
John Wellbelove
338164d871 Added conditional compile directives for C++11 2018-12-29 20:47:17 +00:00
John Wellbelove
9266920e2a Added rvalue reference push_back & insert. 2018-12-29 15:36:08 +00:00
John Wellbelove
a8f07e0622 Added rvalue reference variants 2018-12-29 15:34:53 +00:00
John Wellbelove
f8c6830807 Merge remote-tracking branch 'origin/feature/cumulative_moving_average' into development 2018-12-28 09:45:43 +00:00
John Wellbelove
696c61f198 etl::deque push fix 2018-12-17 19:09:56 +00:00
John Wellbelove
b3f7563ebb Merge remote-tracking branch 'origin/master' into feature/rvalue-references
# Conflicts:
#	include/etl/private/pvoidvector.h
2018-12-17 19:09:32 +00:00
John Wellbelove
b31e944cef Updated version 2018-12-16 18:58:43 +00:00
John Wellbelove
3e4035e059 Added rvalue reference API 2018-12-16 18:36:01 +00:00
John Wellbelove
8627b8771e Added move algorithms & utility. 2018-12-16 18:35:37 +00:00
John Wellbelove
246365d85f Updated versions 2018-12-09 12:31:27 +00:00
John Wellbelove
6b29f4eaca Added C++03/C++11 emplace for deque, priority_queue, queues, stack, variant & vector. 2018-12-09 12:11:54 +00:00
John Wellbelove
b7cc17f84a Merge remote-tracking branch 'origin/development' into feature/emplace_var_arg 2018-12-08 16:01:35 +00:00
Jonathan Pan
8e9eaf4f7c [#101] Adding non-const emplace overloads for vector (#102) 2018-11-04 11:51:55 +00:00
John Wellbelove
7ceabcb571 Merge from GitLab CMake-CLion feature branch 2018-10-28 12:54:45 +00:00
John Wellbelove
aee76d67e8 Merge remote-tracking branch 'origin/feature/bit_stream' into development
# Conflicts:
#	include/etl/profiles/armv6.h
#	include/etl/profiles/armv6_no_stl.h
#	include/etl/version.h
#	support/Release notes.txt
#	test/vs2017/etl.vcxproj.filters
2018-10-07 08:37:14 +01:00
Bartłomiej Burdukiewicz
c505e9a522 Removed repeated semicolon, this helps to compile etl without errors (#100)
with -pedantic/-pedantic-errors flags.
2018-09-29 20:23:45 +02:00
John Wellbelove
df842eacec Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	support/Release notes.txt
2018-09-22 13:37:25 +01:00
Austin Morton
fb3d4d78fa Use diagnostic push and pop when suppressing GCC warnings to prevent suppressions from impacting code outside of ETL (#99) 2018-09-21 07:34:16 +01:00
Arek Sredzki
ece332630d Use deleter in etl::unique_ptr::reset(...) (#98) 2018-09-20 12:51:48 +01:00
John Wellbelove
65c0de9110 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	support/Release notes.txt
2018-09-18 18:39:35 +01:00
John Wellbelove
b47c0a6c9b Merge remote-tracking branch 'origin/development' 2018-09-15 09:56:54 +01:00
John Wellbelove
02987191a5 Removed push(void) push_back(void) and push_front(void) function for containers. 2018-09-15 08:58:08 +01:00
John Wellbelove
218b1573f8 Added CRC16 MODBUS
Added ETL_ prefic to extern const arrays.
2018-09-14 19:25:32 +01:00
John Wellbelove
eb406eafea Swapped event and current state parameters for state transition 2018-09-12 17:39:02 +01:00
John Wellbelove
2ab1d8d346 Swapped event and current state parameters for state transition 2018-09-12 17:35:59 +01:00
John Wellbelove
37e86e7971 Process event loops until action or end of transition table 2018-09-11 23:00:25 +01:00
John Wellbelove
9becaefdd8 Added start() and changed order of execution. 2018-09-10 20:42:32 +01:00
John Wellbelove
0a717209ae Merge remote-tracking branch 'origin/feature/light_weight_fsm' into development 2018-09-09 08:26:30 +01:00
John Wellbelove
8abf60523b Made get_state_id non-virtual 2018-09-09 08:26:10 +01:00
John Wellbelove
d1a63fd507 Merge remote-tracking branch 'origin/feature/light_weight_fsm' into development 2018-09-08 15:45:19 +01:00
John Wellbelove
5aa369451e State Chart Template
Unit tests complete
2018-09-08 15:44:33 +01:00
John Wellbelove
61f0953c9b Added entry and exit 2018-09-07 00:33:30 +01:00
John Wellbelove
c2c7ae0111 Renamed 2018-09-07 00:33:04 +01:00
John Wellbelove
5a3f6b4355 First draft 2018-09-06 21:33:33 +01:00
Prasenjit Sengupta
4ae529a843 Fix extra semicolon warning in list.h (#97) 2018-09-06 21:16:31 +01:00
Prasenjit Sengupta
01364bda14 Add default C++17 profiles (#95) 2018-09-06 21:16:01 +01:00
John Wellbelove
9872acd6fb First draft 2018-09-05 21:12:35 +01:00
John Wellbelove
085a66f930 Renamed 2018-09-05 21:11:16 +01:00
John Wellbelove
8efa47f3da First draft 2018-09-05 21:08:52 +01:00
John Wellbelove
60f7061bef #93 map.h on release 11.15.0 does not compile with clang-6 2018-09-04 23:25:16 +01:00
John Wellbelove
c6061863a6 Added 'uul' to 64bit literals 2018-09-04 17:50:32 +01:00
John Wellbelove
0f91072e3f More fixes for nullptr on ARM5/ARM6 compilers 2018-09-02 14:05:27 +01:00
John Wellbelove
3fba1ae905 Fixed issue #94.
nullptr for ARM5 compiler
2018-09-01 07:57:58 +01:00
John Wellbelove
504b9b574e Updated version 2018-08-27 23:32:52 +01:00
John Wellbelove
e5e38a8ee8 Compatibility with Keil compiler 2018-08-27 22:07:17 +01:00
John Wellbelove
b6b6a36316 Added missing find_n & transform 2018-08-27 22:06:49 +01:00
John Wellbelove
1606ae3dcc Added missing algorithms.
Fixed namespace selection.
2018-08-27 13:22:04 +01:00
John Wellbelove
0b0ce2645b Merge remote-tracking branch 'origin/feature/shared_pools' into development
# Conflicts:
#	include/etl/list.h
2018-08-22 20:13:18 +01:00
John Wellbelove
bfebb770e6 Fix string compare tests to be more compatible across compilers. 2018-08-18 14:49:23 +01:00
John Wellbelove
20485936c5 Added bind1st & bind2nd to alternate STL implementations.
Added additional conditional compilation to algorithms using 'bind'.
2018-08-18 12:04:11 +01:00
John Wellbelove
df83a04166 Merge remote-tracking branch 'origin/master' into feature/no_stl
# Conflicts:
#	include/etl/memory.h
#	include/etl/private/ivectorpointer.h
#	include/etl/stl/alternate/limits.h
#	include/etl/stl/iterator.h
#	test/test_no_stl_algorithm.cpp
#	test/test_no_stl_functional.cpp
#	test/test_no_stl_limits.cpp
#	test/test_no_stl_utility.cpp
#	test/test_vector_pointer.cpp
#	test/vs2017/etl.vcxproj.filters
2018-08-18 10:09:56 +01:00
John Wellbelove
7a9ade20c2 Added alternate STL support to allow 'No STL' option. 2018-07-22 20:47:33 +01:00
John Wellbelove
063e65386f Deleted files 2018-07-03 22:01:56 +01:00
John Wellbelove
d11ad9518f Initial changes 2018-06-19 06:24:37 +01:00
John Wellbelove
a2e701567d Renamed STATIC_ASSERT to ETL_STATIC_ASSERT
Remove non-conforming std::nullptr
2018-06-18 18:49:09 +01:00
John Wellbelove
10a00724e0 Updated version 2018-06-17 22:14:19 +01:00
John Wellbelove
91cf9713fe Comment change 2018-06-17 21:12:06 +01:00
John Wellbelove
fee3fd36fe Merge remote-tracking branch 'origin/feature/fsm_deferred_event' into development 2018-06-17 21:11:37 +01:00
John Wellbelove
52176c84f0 Comment change 2018-06-17 21:10:16 +01:00
John Wellbelove
acc317c3d4 Non-virtual message is no longer protected. 2018-06-17 21:09:59 +01:00
John Wellbelove
fb2d2e96f6 Added flag to call on_enter_state on start. Default true. 2018-06-17 21:09:26 +01:00
John Wellbelove
bf16ee4f5c Comment change 2018-06-17 21:08:03 +01:00
John Wellbelove
254a34935a Added more checks for STLPort 2018-06-17 10:12:08 +01:00
John Wellbelove
eeb6a310c1 Compatibility changes for Segger IDE, GCC & STLPort 2018-06-14 21:53:54 +01:00
John Wellbelove
5e30f02449 Fixed missing semicolons 2018-06-12 21:12:32 +01:00
John Wellbelove
7b7a1c4af2 Fixed typo 2018-06-12 21:09:18 +01:00
John Wellbelove
7fbc543080 Merge remote-tracking branch 'origin/feature/CMake' into development
# Conflicts:
#	test/vs2017/etl.vcxproj.filters
2018-05-31 22:21:09 +01:00
John Wellbelove
83d495bc21 Added binary_merge, binary_interleave, is_odd, is_even 2018-05-20 09:16:20 +01:00
John Wellbelove
6a444bf972 Added flags to call on_enter_state and on_exit_state for start() and reset() respectively. The default actions are as the previous version. 2018-05-12 09:01:39 +01:00
EXPROGROUP\john.wellbelove
35d6fc533c Fixed compile error when ETL_DEBUG_COUNT not defined 2018-05-10 15:26:23 +01:00
John Wellbelove
9435d7b1fb Github Issue #73
Updated version
2018-05-09 23:14:32 +01:00
John Wellbelove
681bc407ac Github Issue #73
set_period & set_mode no longer automatically start the timer.
2018-05-09 23:11:56 +01:00
John Wellbelove
837da911c2 Github Issue #73
Fixed issue where single shot timers could not be altered once timed out.
2018-05-09 23:02:50 +01:00
John Wellbelove
d39e51847a Added CRC32-C (Castagnoli) 2018-05-05 09:50:49 +01:00
John Wellbelove
27aa3a2ab3 Added new binary utilities 2018-04-29 19:59:46 +01:00
Austin Morton
dcd42ee17e Fix assumption that min/max macros will always be defined on a Microsoft compiler (#72)
Merge in min-max changes to a feature branch
2018-04-24 14:27:18 +01:00
John Wellbelove
8085f97e52 Rewrite of debug count so that it does not exists in unit test code or when explicitly enabled. 2018-04-24 14:15:30 +01:00
John Wellbelove
d63afc70ea Removed non-compliant constexpr 2018-04-21 18:26:24 +01:00
John Wellbelove
67a32df7d0 Added etl::type_select 2018-04-21 17:45:34 +01:00
John Wellbelove
48ede3fdbe Capitalised warning comment 2018-04-21 17:45:00 +01:00
John Wellbelove
a0f2f8bf8e Added null_type template 2018-04-21 17:32:24 +01:00
John Wellbelove
f2416da7ea Changed header guards to be GCC compliant. 2018-04-21 09:24:45 +01:00
John Wellbelove
ea9a1e51c9 More efficient implementations of sign_extend 2018-04-16 19:17:41 +01:00
John Wellbelove
e3b40c1eb4 Added capacity() to etl::queue
Prefixed max_size() and capacity() with ETL_CONSTEXPR to all queue types
2018-04-14 13:15:21 +01:00
John Wellbelove
23888c4be6 Added permutations and combinations template constants. 2018-04-14 10:46:15 +01:00
John Wellbelove
c14db00d88 Merge remote-tracking branch 'origin/feature/spsc_queues' into development
# Conflicts:
#	test/vs2017/etl.sln
#	test/vs2017/etl.vcxproj
2018-04-08 19:55:29 +01:00
John Wellbelove
6603ad9632 Updated release notes and version numbers 2018-04-08 19:50:41 +01:00
John Wellbelove
1ca0ad94a9 Added SPSC and MPSC queues 2018-04-08 18:10:23 +01:00
John Wellbelove
d77da45fed Added mutex support 2018-04-08 18:09:39 +01:00
John Wellbelove
fa57304cca Added atomic support 2018-04-08 18:09:15 +01:00
John Wellbelove
4059a8557e Removed ETL_CPP11_SUPPORTED 2018-04-08 18:08:34 +01:00
John Wellbelove
f962914a8f Initial untested SPSC queues. 2018-04-02 12:28:25 +01:00
John Wellbelove
bc0a8a49a7 Updates to atomic classes. 2018-04-02 12:26:58 +01:00
John Wellbelove
2841afc5e5 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	include/etl/version.h
#	support/Release notes.txt
2018-03-30 13:45:33 +01:00
John Wellbelove
3d52e68090 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	support/Release notes.txt
2018-03-25 14:42:29 +01:00
John Wellbelove
ab65a5abaa Added std::initializer_list constructors when ETL_CPP11_SUPPORTED is defined as 1 2018-03-25 14:34:28 +01:00
John Wellbelove
54981cfaa4 Merge remote-tracking branch 'origin/development'
# Conflicts:
#	support/Release notes.txt
2018-03-22 06:11:35 +00:00
John Wellbelove
8ac3b64823 Added reset() to etl::optional 2018-03-21 19:35:18 +00:00
John Wellbelove
d7f9d1a7fb Merge remote-tracking branch 'origin/development'
# Conflicts:
#	CMakeLists.txt
2018-03-18 19:29:36 +00:00
John Wellbelove
44068d1493 Merge from new directories feature.
Added files to VS project.
Fixed ETL_FILE numbering clashes.
2018-03-18 18:14:11 +00:00
John Wellbelove
4864e95b36 New directory layout 2018-03-18 17:48:29 +00:00