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
Bo Rydberg
e4431d3940
Fix compile error insert/assign two same types non-iterator ( #467 )
...
Assignent and insert_after of count and values of same types has to work
2021-11-19 11:04:41 +00:00
Bo Rydberg
94507ad1c6
Fix list insert and assign errors ( #468 )
...
Also fixing some test asserts related to etl::list.
2021-11-19 11:04:10 +00:00
John Wellbelove
b61c5e0442
Modified deque const_iterator to iterator
2021-11-18 13:29:48 +00:00
John Wellbelove
642e36a9c4
Modified deque const_iterator to iterator
2021-11-18 12:58:33 +00:00
Steffen Zimmermann
08218d71cd
harmonize copy ctor and asignment op for etl::delegate ( #465 )
...
etl::delegate has a user-written copy constructor and a defaulted assignment
operator. The copy constructor does the same as a defaulted copy constructor,
therefore there is no need to add a user-written copy constructor.
The combination of user-written copy constructor and defaulted assignment
operator causes a warning in Coverity, a static code analyzer:
copy_without_assign: Class etl::delegate<void ()> has a user-written copy constructor etl::delegate<void ()>::delegate(etl::delegate<void ()> const &) but no corresponding user-written assignment operator.
This commit replaces the user-written copy constructor with a defaulted copy
constructor, which does the same.
2021-11-18 12:26:15 +00:00
John Wellbelove
5baa1af862
Make functions for containers
2021-11-18 12:26:15 +00:00
John Wellbelove
52586af2de
Latest implementations
2021-11-18 12:26:15 +00:00
John Wellbelove
8fc7e0208a
Added 'make' functions to construct containers
...
Added tests for 'make' and 'template deduction'
2021-11-18 12:26:13 +00:00
John Wellbelove
d93834ed83
constexpr for enum_type
2021-11-18 12:25:31 +00:00
John Wellbelove
58013e8257
changed iterator parameters to const_iterator
2021-11-17 17:59:57 +00:00
Steffen Zimmermann
d05bf1b4fd
let map/multimap/set/multiset return iterator on erase ( #463 )
...
Beginning with C++11, erase(iterator) and erase(const_iterator) returns
an iterator following the removed element.
2021-11-15 10:26:23 +00:00
John Wellbelove
0acd537a7e
Updates
2021-11-15 09:37:22 +00:00
John Wellbelove
d4a22293c7
Added missing includes
2021-11-15 09:37:21 +00:00
John Wellbelove
8f02e90735
Experimental automatic builtins for algorithms
2021-11-15 09:37:21 +00:00
John Wellbelove
e296bd24f7
Make functions for containers
2021-11-15 09:32:50 +00:00
John Wellbelove
d03e6f5587
Latest implementations
2021-11-15 09:32:12 +00:00
John Wellbelove
84974acbfa
Added 'make' functions to construct containers
...
Added tests for 'make' and 'template deduction'
2021-11-15 09:32:11 +00:00
John Wellbelove
bb72ded2e2
constexpr for enum_type
2021-11-15 09:31:30 +00:00
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