John Wellbelove
eb49582837
Small optimisations for computing indexes for queues & cyclic_value.
2022-03-26 18:30:33 +00:00
Steffen Zimmermann
148cf9ef26
fix unused-local-typedefs warning ( #517 )
...
clang complains about the line:
include/etl/algorithm.h:298:66: error: typedef 'value_type' locally defined but not used [-Werror=unused-local-typedefs]
typedef typename etl::iterator_traits<TIterator>::value_type value_type;
2022-03-25 10:42:18 +00:00
John Wellbelove
1b5da4a4b2
Fixed undefined macros when compiler type is defined by the user
...
Updated version numbers
2022-03-24 14:46:38 +00:00
John Wellbelove
fa7f6dc9d7
Fixed move parameter in notify_observers
2022-03-23 19:59:30 +00:00
John Wellbelove
5577170fd2
Updated version numbers
2022-03-23 11:30:31 +00:00
John Wellbelove
aad0dabebe
Re-initroduced etl::functor
...
Added constexpr to etl::member_function_wrapper and etl:;functor_wrapper
2022-03-22 15:16:51 +00:00
John Wellbelove
6a00274b75
Removed commented out code
2022-03-22 15:15:28 +00:00
John Wellbelove
1be86f8566
Added etl::member_function_wrapper and etl::functor_wrapper to utility.h
2022-03-22 13:51:02 +00:00
John Wellbelove
5b3454ad10
Fixed mem_set parameter type
2022-03-22 00:46:51 +00:00
John Wellbelove
422c5e0d36
The counter in etl::debug_count is atomic, if available
2022-03-20 11:48:02 +00:00
John Wellbelove
6f99c2b3a9
Added template wrappers around memcpy, memmove, memcmp, memset& memchr.
...
Added C++23 macro
Updated version numbers
2022-03-19 21:29:29 +00:00
John Wellbelove
dbed55c507
Added C++23 macros
2022-03-18 15:29:53 +00:00
John Wellbelove
a8ecaf635b
Remove mem macros
2022-03-18 15:29:37 +00:00
John Wellbelove
87080285e6
Merge branch 'feature/#515-make-unaligned-types-fully-constexpr' into development
...
# Conflicts:
# include/etl/algorithm.h
# include/etl/endianness.h
2022-03-18 15:19:54 +00:00
John Wellbelove
1c03e57aba
Made etl::unaligned_type constexpr
2022-03-18 15:14:23 +00:00
John Wellbelove
b0e9ab8fd2
Made etl::swap ETL_CONSTEXPR14
2022-03-18 15:12:44 +00:00
John Wellbelove
ae92932788
Changed ETL_ENDIANNESS_IS_CONSTEXPR to ETL_HAS_CONSTEXPR_ENDIANNESS
2022-03-18 15:12:05 +00:00
John Wellbelove
779a900b67
Changed ETL_CONSTEXPR17 to ETL_CONSTEXPR14 for reverse iterators
2022-03-18 15:11:12 +00:00
John Wellbelove
d5c91ae739
Removed builtin mem macros
...
Not always constexpr compatible for all types
2022-03-18 15:10:21 +00:00
John Wellbelove
b0f5a99e15
Added macros for namespace identification
2022-03-18 15:09:26 +00:00
John Wellbelove
2423745786
Fixed missing lines for cplusplus trait
2022-03-12 10:15:19 +00:00
John Wellbelove
740e490aed
Tested ETL traits code.
2022-03-11 20:28:26 +00:00
John Wellbelove
43100b2cf4
Initial code
2022-03-07 13:11:28 +00:00
John Wellbelove
c8f13fa8b8
Remove initializer_list selection logic.
2022-03-05 18:02:47 +00:00
John Wellbelove
55aa55a269
Added optional counter type to instance_count.
2022-03-05 18:00:37 +00:00
John Wellbelove
dda482a321
Updated how the definition of initializer_list is selected.
2022-03-05 17:59:48 +00:00
John Wellbelove
292f5d9176
Modified logic for enabling the use of initializer lists
2022-03-04 20:54:38 +00:00
John Wellbelove
2c6ffdc36f
Updated version numbers and release notes.
2022-03-03 20:01:18 +00:00
John Wellbelove
b5b09274ce
Added extra sanity checks for new classes
2022-03-03 18:39:23 +00:00
John Wellbelove
c34ac53a4e
Changes the order of callback and re-insertion of the timer in the active list.
2022-03-03 14:34:01 +00:00
John Wellbelove
0a163463c2
Added callback and message timers for interrupts.
2022-03-03 14:31:24 +00:00
John Wellbelove
a1e3017028
Semaphore macro type is local to timer classes
2022-03-02 19:38:11 +00:00
John Wellbelove
290f7a86ac
Changed atomic timers to use a user supplied atomic semaphore counter.
2022-03-02 19:26:19 +00:00
John Wellbelove
d8405bfa00
Changed from C cast to C++ cast
2022-02-26 11:17:36 +00:00
John Wellbelove
8da7251e82
Always use stddef.h
2022-02-26 11:17:07 +00:00
John Wellbelove
3c36bc382a
Modified WCHAR_MIN and WCHAR_MAX checks
2022-02-26 11:16:26 +00:00
John Wellbelove
3c38a7d0c4
Added char8_t type
2022-02-26 11:15:42 +00:00
John Wellbelove
f355a4e8d6
Fix 'unused function parameter' warnings
2022-02-26 11:15:17 +00:00
John Wellbelove
734df1a372
Merge branch 'development'
2022-02-20 19:28:22 +00:00
John Wellbelove
90b20e626b
Updated versions
2022-02-20 19:14:25 +00:00
John Wellbelove
679304b9f5
Adjusted initializer_list include logic
2022-02-20 18:57:06 +00:00
John Wellbelove
60757a44ab
callback and message timers now uses etl::timer_semaphore_t
2022-02-20 18:49:43 +00:00
John Wellbelove
8644b833a3
Fixed send_message signatures
2022-02-20 18:46:15 +00:00
John Wellbelove
4e9471aac0
Comment typo
2022-02-16 11:16:13 +00:00
John Wellbelove
1aead2e59f
Simplified std::byte for C++03
2022-02-16 08:49:26 +00:00
John Wellbelove
b472563b62
Added C++03 implementation
2022-02-15 20:58:19 +00:00
John Wellbelove
e5fd40d82b
Added etl::byte
2022-02-15 16:41:47 +00:00
John Wellbelove
61d0db16b6
Merge branch 'development'
2022-02-15 10:55:04 +00:00
John Wellbelove
86c0813d93
Added fill() member functions to array_view, circular_buffer, deque, indirect_vector and vector
2022-02-15 10:54:44 +00:00
John Wellbelove
977b937fff
Fixed specialisation for copy_backward
2022-02-14 20:25:44 +00:00
John Wellbelove
1cdb4c69b6
Final initializer_list updates
...
Added a separate project to test initializer_list
2022-02-14 11:06:09 +00:00
John Wellbelove
117902e39a
Updates to sanity check
...
Added Intel compiler support to MSVC
2022-02-11 21:21:57 +00:00
John Wellbelove
c3c1afa284
Removed pre-processor error for missing atomics
2022-02-11 17:36:55 +00:00
John Wellbelove
8c45d2cc2a
Added sanity checks for initializer_list
2022-02-11 15:00:35 +00:00
John Wellbelove
64edec227d
Initial code for MSVC, GCC, Clang and ARM6 compilers
2022-02-11 13:40:03 +00:00
John Wellbelove
d0150696a5
Changes for controlling the availability of constexpr algorithms
2022-02-11 09:57:55 +00:00
John Wellbelove
fa79112144
Added Green Hills compiler check
2022-02-10 18:42:16 +00:00
John Wellbelove
05e687d8fa
Syntax error fixes
2022-02-10 18:41:30 +00:00
John Wellbelove
64efb84ec3
Singleton class
2022-02-10 18:40:52 +00:00
John Wellbelove
ee79392b7b
Merge branch 'hotfix/pr-#505-put-storage-class-first-and-remove-unreachable-statement' into development
2022-02-08 18:28:33 +00:00
John Wellbelove
04590ef865
Remove inline
2022-02-08 18:28:25 +00:00
Jochen Steinmann
180841fa26
Put storage class first and remove unreachable statement ( #505 )
...
Fixes following greenhills compiler warnings
* etl/include/etl/message_router.h", line 2434 (col. 11): warning #111-D: statement is unreachable
* etl/include/etl/char_traits.h", line 105 (col. 19): warning #82-D: storage class is not first
Co-authored-by: Jochen Steinmann <jochen.steinmann2@de.bosch.com>
2022-02-07 10:51:10 +00:00
John Wellbelove
c65da15063
Tweak built-in tests
2022-02-06 17:58:22 +00:00
John Wellbelove
08e2d4c4d0
Updated version numbers
2022-02-04 11:45:26 +00:00
John Wellbelove
87fe3eec2d
Replaced post increment with pre increment
2022-02-03 17:16:26 +00:00
John Wellbelove
791aa97885
Work in progress
2022-02-03 12:40:29 +00:00
John Wellbelove
19a4b93e78
Fixed const-ETL_CONSTANT mismatch.
2022-01-29 22:14:10 +00:00
John Wellbelove
4b1b6004c6
Final(?) changes
2022-01-29 14:16:26 +00:00
John Wellbelove
68d5f39c7c
Merge branch 'master' into feature/constexpr-for-string_view
2022-01-25 10:49:56 +00:00
John Wellbelove
734e4e654a
Minor changes
...
Modified MSVC compiler C++11 check
2022-01-24 20:15:17 +00:00
John Wellbelove
3b7f280b32
Reinstated get_state_id() and start() functions in he base class.
2022-01-24 17:36:47 +00:00
John Wellbelove
64b6c20d19
Merge branch 'master' into feature/constexpr-for-string_view
...
# Conflicts:
# include/etl/iterator.h
# include/etl/platform.h
# test/vs2019/etl.vcxproj
# test/vs2019/etl.vcxproj.filters
2022-01-23 18:26:52 +00:00
John Wellbelove
13b28387c5
Merge branch 'feature/reduce-size-of-state_chart' into development
2022-01-23 14:23:44 +00:00
John Wellbelove
2353672b64
Renamed compile time state machine classes
2022-01-23 10:46:35 +00:00
John Wellbelove
4d0682e196
Merge branch 'hotfix/bitset' into development
2022-01-22 16:17:09 +00:00
John Wellbelove
e98270ca60
Bitset updates
2022-01-22 16:16:44 +00:00
Tom
1f7ebe3ee8
Added to_string, to_ulong and to_ullong to bitset ( #499 )
...
* Added to_string, to_ulong and to_ullong to bitset
* Reverted whitspace changes
* Arduino has NAN defined, but not nan, nanf nor nanl
(it got __builtin_nan, but I don't think this is what we want here...)
* Added missing typenames
2022-01-22 11:48:34 +00:00
Tom
b5a5f0e83a
Fixed bug where invert changed bits over the TOP_MASK ( #500 )
2022-01-22 11:48:08 +00:00
Tom
09e7b3ff1f
Handled SIZE == 0 edge cases ( #501 )
2022-01-22 11:47:39 +00:00
John Wellbelove
d2e4774ca1
Improved support for MSVC language level detection
2022-01-21 10:05:47 +00:00
John Wellbelove
fc59b4e34e
Latest state chart code
...
Reinstated virtual process_event()
2022-01-20 11:05:37 +00:00
John Wellbelove
f3973e4935
Latest state chart code
...
Reinstated virtual process_event()
2022-01-18 20:15:56 +00:00
John Wellbelove
7c3c7ea05e
Removal of redundant code
2022-01-18 20:14:55 +00:00
John Wellbelove
8337c87f16
Initial state_chart changes
2022-01-17 11:19:19 +00:00
John Wellbelove
e263a7cb75
Initial state_chart changes
2022-01-16 13:30:52 +00:00
John Wellbelove
0a6e22ae2a
Initial state_chart changes
2022-01-15 19:06:20 +00:00
John Wellbelove
c3b603be32
Fixed IAR warnings in binary.h
...
Fixe unaligned type_comment
platform.h comments
Fixed etl_profile.h to native little endian for !C++20 or !STL
2022-01-14 10:08:46 +00:00
John Wellbelove
912427849d
Updated version numbers
2022-01-13 12:46:41 +00:00
John Wellbelove
f8b2773684
Some ETL_CONSTEXPR. Added size()
2022-01-13 10:53:14 +00:00
John Wellbelove
f58a20294a
Added index operators
...
Split code into type and non-type dependent classes
2022-01-12 18:36:34 +00:00
John Wellbelove
17c287af9d
Completed unaligned_type
2022-01-11 17:44:40 +00:00
John Wellbelove
7f6b6d9098
Updates to endianness
2022-01-11 17:43:53 +00:00
John Wellbelove
cf0daf6c6b
Changed inline functions to templates
2022-01-11 17:43:30 +00:00
John Wellbelove
cb243f78ca
Updated bit_cast
2022-01-11 17:42:56 +00:00
John Wellbelove
9bea87dd90
Removed unnecessary inline keywords
2022-01-11 16:19:24 +00:00
John Wellbelove
973e0f8ea6
Renamed 8bit check macro
2022-01-10 00:35:02 +00:00
John Wellbelove
f06a027da7
Moved void_t definition
2022-01-08 19:27:16 +00:00
John Wellbelove
6b123e1bdb
Merge branch 'feature/bit_cast-midpoint-lerp' into feature/unaligned-types
...
# Conflicts:
# include/etl/endianness.h
# test/vs2019/etl.vcxproj.filters
2022-01-08 18:53:17 +00:00
John Wellbelove
e6736404ed
Final code after local CI tests
2022-01-08 18:51:35 +00:00
John Wellbelove
c99d984453
Updates to bin.h, binary.h and endian.h
2022-01-08 11:38:04 +00:00
John Wellbelove
79c659b0bb
unaligned and endianess experiments
2022-01-06 10:18:58 +00:00
John Wellbelove
2cf77bf837
Initial experimental unaligned fundamental types
2022-01-04 12:32:56 +00:00
John Wellbelove
7c4fbcc8f0
Initial experimental unaligned fundamental types
2022-01-04 12:04:56 +00:00
John Wellbelove
dc2ad30294
Iterator is more SFINAE compatible
2022-01-03 18:23:04 +00:00
John Wellbelove
9665ab21c1
Updated endianness for C++20
2022-01-03 18:22:08 +00:00
John Wellbelove
b8579f0151
Initial bit tests
2022-01-03 18:21:45 +00:00
John Wellbelove
dc563239e5
Added all permutations of leading/trailing bit tests
2022-01-03 18:21:19 +00:00
John Wellbelove
d4cc115509
Modified C++ language level detection
2022-01-03 18:20:14 +00:00
John Wellbelove
cf0b816bc1
Update to support C++20
2022-01-02 14:20:10 +00:00
John Wellbelove
7ad3b51308
Added etl::lerp & initial reverse engineered <bit> header
2021-12-31 09:52:02 +00:00
John Wellbelove
4f05600900
Added delegate test from std::function
2021-12-30 09:36:36 +00:00
John Wellbelove
2643f8ef4b
Added etl::midpoint
2021-12-28 18:42:17 +00:00
John Wellbelove
e4ab79b243
Initial code
2021-12-24 13:13:32 +00:00
John Wellbelove
064c7dc16b
GCC fixes for unit tests
2021-12-24 09:25:24 +00:00
John Wellbelove
b98fd16e36
array_view updates
2021-12-22 18:58:15 +00:00
John Wellbelove
de5a90a91c
Added Green Hills compiler to minmax push and pop
...
message_packet updates
message_packet updates
span updates
message_packet updates
message_packet updates
Remove superfluous line
Fixe undefined behaviour in test
2021-12-21 12:04:51 +00:00
John Wellbelove
6f6ebe456b
Fix for double formatting with precision > 9 ( #480 )
...
* Add a test that reproduces the double formatting failure
* Fix root cause, restrict precision to 9 on 32 bit platforms, unrestricted on 64 bit
2021-12-15 19:26:17 +00:00
Noah Luskey
36782f77c0
Fix for double formatting with precision > 9 ( #480 )
...
* Add a test that reproduces the double formatting failure
* Fix root cause, restrict precision to 9 on 32 bit platforms, unrestricted on 64 bit
2021-12-15 17:27:57 +00:00
John Wellbelove
4acad4206d
Disable span TContainer constructor for arrays
2021-12-15 12:48:39 +00:00
John Wellbelove
67474499c2
Disable span TContainer constructor for arrays
2021-12-15 12:21:10 +00:00
John Wellbelove
cb7ee61b33
Disable span TContainer constructor for arrays
2021-12-14 17:23:26 +00:00
John Wellbelove
6827a73ff8
Disable span TContainer constructor for arrays
2021-12-14 17:23:26 +00:00
John Wellbelove
d2ba5e9956
Multiple code changes, delegates & timers
2021-12-14 10:52:49 +00:00
John Wellbelove
331e07b272
Multiple code changes, delegates & timers
2021-12-13 17:16:21 +00:00
John Wellbelove
44715cadfe
Experimental code
2021-12-12 18:20:45 +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
06e8aaf8d4
#475 When ETL_NO_ATOMICS is defined the timer.h file should not define timer_semaphore_t
...
#471 Add contains() method to etl::map and etl::set
#477 deque::resize should throw deque_full if requested size is too large
2021-12-05 15:39:11 +00:00
John Wellbelove
f5514104e7
contains() & transparent comparator
2021-12-04 17:28:47 +00:00
John Wellbelove
6e1e75094f
Re-enable multi_vector
2021-12-04 11:00:51 +00:00
John Wellbelove
c6ff32e901
contains() & transparent comparator
2021-12-04 10:24:04 +00:00
John Wellbelove
4d48082f4f
contains() & transparent comparator for map, multimap, set and multiset
2021-12-01 18:42:22 +00:00
John Wellbelove
85fb83f0be
contains() & transparent comparator for reference set and multiset
2021-12-01 13:19:31 +00:00
John Wellbelove
a16ae414a2
contains() & transparent comparator for set and multiset
2021-11-27 18:42:30 +00:00
John Wellbelove
042da035fa
contains() & transparent comparator for map and multimap
2021-11-27 17:57:51 +00:00
John Wellbelove
015003fa03
contains() for etl::map
2021-11-26 19:35:18 +00:00
John Wellbelove
5fa7ee22ab
Merge branch 'master' into feature/constexpr-for-string_view
...
# Conflicts:
# include/etl/array.h
# include/etl/deque.h
# include/etl/forward_list.h
# include/etl/generators/type_traits_generator.h
# include/etl/list.h
# include/etl/platform.h
# include/etl/vector.h
# meson.build
# test/test_array.cpp
# test/test_deque.cpp
# test/test_flat_map.cpp
# test/test_flat_multimap.cpp
# test/test_flat_multiset.cpp
# test/test_flat_set.cpp
# test/test_forward_list.cpp
# test/test_list.cpp
# test/test_map.cpp
# test/test_multimap.cpp
# test/test_multiset.cpp
# test/test_set.cpp
# test/vs2019/etl.vcxproj.filters
2021-11-26 18:10:57 +00:00
John Wellbelove
3e98f4c537
Fixes for Ubuntu 18
2021-11-21 16:45:37 +00:00
John Wellbelove
ed0d2f5759
Fixes for Ubuntu 18
2021-11-21 16:38:16 +00:00
John Wellbelove
6c3deb2426
Fixes for Ubuntu 18
2021-11-21 16:25:18 +00:00
John Wellbelove
02cee8c2a3
Fixes for Ubuntu 18
2021-11-21 16:17:23 +00:00
John Wellbelove
e3aea9105c
Fixes for Ubuntu 18
2021-11-21 16:07:44 +00:00
John Wellbelove
2ecc0aa287
Fixes for Ubuntu 18
2021-11-21 14:47:16 +00:00
John Wellbelove
42f9505237
Fixes for Ubuntu 18
2021-11-21 14:37:58 +00:00
John Wellbelove
f5f93926c9
Fixes for Ubuntu 18
2021-11-21 14:32:49 +00:00
John Wellbelove
b9778190dc
Updated version numbers
2021-11-21 12:35:30 +00:00
John Wellbelove
fa637f794e
Update to const_iterator parameter for insert.
2021-11-21 10:36:09 +00:00
John Wellbelove
8872b9a0ae
const_iterator parameters for containers
2021-11-20 19:04:39 +00:00
John Wellbelove
11fa2e4e38
Merge branch 'hotfix/remove-template-overload-abiguity' into development
...
# Conflicts:
# include/etl/forward_list.h
# include/etl/list.h
# include/etl/vector.h
# test/test_forward_list.cpp
# test/test_list.cpp
2021-11-19 11:23:50 +00:00
John Wellbelove
7aaf37e21d
Updated deque
2021-11-19 11:20:49 +00:00
Bo Rydberg
a41418ed91
Fix compile error for vector assign and insert with same type non-iterator ( #466 )
2021-11-19 11:05:04 +00:00