John Wellbelove
c8471e5eeb
Endianness for IAR compiler
2022-09-30 11:46:13 +01:00
David Hebbeker
d1e094476e
Automatically detect native endianness for IAR compiler platform. ( #612 )
...
* Auto detect native endianness for IAR compiler platform.
References:
- [IAR C/C++ Development Guide Compiling and Linking for Arm Limited’s **Arm**® Cores](https://wwwfiles.iar.com/arm/webic/doc/ewarm_developmentguide.enu.pdf )
- [IAR C/C++ Compiler User Guide for Microchip Technology’s **AVR** Microcontroller Family](https://wwwfiles.iar.com/AVR/webic/doc/EWAVR_CompilerGuide.pdf )
* Fix spelling mistake.
2022-09-29 08:20:54 +01:00
David Hebbeker
24ebe3efe8
Replace ETL_COMPILER_ICCAVR by ETL_COMPILER_IAR. ( #602 )
...
The current definition mechanism for ETL_COMPILER_ICCAVR does not work. Both IAR compilers, for ARM and AVR define `__IAR_SYSTEMS_ICC__`. Thus `ETL_COMPILER_TYPE_DETECTED` will be defined in line before ETL_COMPILER_ICCAVR is defined. This switch will never be entered.
Currently I see no reason for differentiating both compilers (`__ICCARM__` and `__ICCAVR__`). The condition for the IAR compiler platform (`__IAR_SYSTEMS_ICC__`) is sufficient (combined with <C++11 detection).
At the moment ETL_COMPILER_ICCAVR is used as a switch condition for using `#pragma push_macro`. But actually IAR ARM and IAR AVR have no such macro defined. ETL_COMPILER_IAR is defined for both compilers. Thus the switch condition is replaced with ETL_COMPILER_IAR.
2022-09-14 11:29:37 +01:00
David Hebbeker
d31f787585
Move __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS before #include <stdint.h>. ( #601 )
...
Macros must be defined before first include of stdint.h. Else they have no effect.
2022-09-14 11:12:47 +01:00
John Wellbelove
e99a1a5845
Attempt to fix clang CI error
2022-09-11 19:50:09 +01:00
John Wellbelove
f8d9eb0f46
Attempt to fix clang CI error
2022-09-11 18:02:27 +01:00
John Wellbelove
0bfe4baa63
Attempt to fix clang CI error
2022-09-11 16:04:15 +01:00
John Wellbelove
23be4cfd02
Attempt to fix clang CI error
2022-09-11 15:41:51 +01:00
John Wellbelove
38458a71e3
Attempt to fix clang CI error
2022-09-11 15:29:51 +01:00
John Wellbelove
bc48b8ac4e
Deleted copy constructors for etl::circular_buffer_ext, etl_indirect_vector and etl::vector to eliminate dangling pointers.
2022-09-11 12:04:28 +01:00
John Wellbelove
f952057508
Added ETL_ENUM_CLASS and ETL_ENUM_CLASS_TYPE macros
2022-09-11 00:59:34 +01:00
John Wellbelove
c953100dd0
Improved etl::span/std::span compatibility
2022-09-11 00:58:22 +01:00
John Wellbelove
7b733f73ad
Minor updates to bitset
...
Added bitset_ext tests to cmake
2022-09-11 00:57:00 +01:00
John Wellbelove
e78e7b474a
Added etl:lsb_mask, etl::make_lsb_mask, etl::msb_mask and etl::make_msb_mask
2022-09-11 00:55:55 +01:00
John Wellbelove
1e7b5887f5
Minor changes
2022-09-09 19:06:23 +01:00
John Wellbelove
435cec705f
Modified order of standard includes
2022-09-09 14:20:24 +01:00
John Wellbelove
737b0bf6f7
#591 Automatically define __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS
2022-09-08 23:00:48 +01:00
John Wellbelove
2d0d744c74
Updated etl::bitset and added etl::bitset_ext
2022-09-08 20:11:20 +01:00
John Wellbelove
7949c09b93
Merge branches 'development' and 'development' of https://github.com/ETLCPP/etl into development
2022-09-08 20:09:04 +01:00
David Hebbeker
1e592b5921
Do not use min/max workaround for ICCAVR. ( #595 )
...
IAR C/C++ Compiler V6.70.1.929 for Atmel AVR does not support push_macro and does neither define macros for min or max.
2022-09-08 16:29:02 +01:00
John Wellbelove
d2e8e0aa71
#594 Use a different workaround for problems with IARCC.
2022-09-07 12:38:30 +01:00
David Hebbeker
63e31068b7
Apply workaround for __has_include(<...>) and ICCAVR. ( #593 )
...
ICCAVR: IAR C/C++ Compiler V6.70.1.929 for Atmel AVR
There seems to be an issue with the ICCAVR compiler and `__has_include(<...>)` syntax:
```
Error[Pe008]: missing closing quote etl\include\etl\placement_new.h 48
Tool Internal Error:
Internal Error: [Front end]: assertion failed at: "..\..\Translator\compiler_core\src\parser\edg\literals.c", line 1159
Internal Error: [Front end]: assertion failed at: "..\..\Translator\compiler_core\src\parser\edg\literals.c", line 1159 etl\include\etl\placement_new.h 48
Error while running C/C++ Compiler
```
Which is weird, as I wonder why `__has_include` is defined in first place. The compiler is supposed to support some dialect of C++98.
Anyhow, `__has_include()` seems to work in general with ICCAVR. And with this change the code compiles well.
2022-09-07 11:15:59 +01:00
John Wellbelove
4b0047a3bb
Updated release information
2022-09-07 11:13:04 +01:00
John Wellbelove
e8cc472ac9
Finished etl::circular_iterator an circular extensions to etl::span
2022-09-06 19:43:01 +01:00
John Wellbelove
dc0ab72e09
circular_span first draft
2022-09-06 10:59:49 +01:00
John Wellbelove
25adb3c68c
Almost finalised circular_iterator and tests
2022-09-04 23:44:51 +01:00
John Wellbelove
2c0f56841e
Almost finalised circular_iterator and tests
2022-09-04 21:05:22 +01:00
John Wellbelove
13a1ce6f8e
Merge branch 'feature/circular_iterator' of https://github.com/ETLCPP/etl into feature/circular_iterator
2022-09-03 13:24:46 +01:00
John Wellbelove
15fd907549
Merge branch 'hotfix/#582-unordered_set-equality-comparison-fails-when-hash-collisions-occur' into development
2022-09-03 11:57:11 +01:00
John Wellbelove
eceaa23f47
#584 unordered_set::const_iterator has incorrect value_type
2022-09-03 11:56:24 +01:00
John Wellbelove
7c5a6e49a1
Fixed unordered container equality tests to match STL
2022-09-02 20:40:17 +01:00
John Wellbelove
0f2b9bb019
Fix non-C++03 code syntax
2022-09-02 15:56:39 +01:00
John Wellbelove
c4b67a2708
Merge branch 'development' of https://github.com/ETLCPP/etl into development
2022-09-02 15:04:23 +01:00
Ilya
818908fb6e
Add minmax_push.h/minmax_pop.h includes ( #589 )
2022-09-02 15:04:01 +01:00
John Wellbelove
b13442823a
Merge branch 'hotfix/#585-etl-result-void-being-unusable-due-to-deleted-default-constructor' into development
2022-09-02 14:06:15 +01:00
John Wellbelove
245fbdeea9
Fixes for etl::result<void, TError>
2022-09-02 14:05:46 +01:00
John Wellbelove
201c1fb918
Merge branch 'hotfix/#583-permit-non-default-constructable-hashes-and-key-equals-in-unordered_map' into development
2022-09-02 13:32:23 +01:00
John Wellbelove
4f5847e189
Updates for unordered maps and sets for an API that better matches the STL
2022-09-02 13:32:00 +01:00
Jesse Li
aab900f002
Permit non-default-constructable hashes and key-equals ( #583 )
...
Co-authored-by: Jesse <jli@planarmotor.com>
2022-09-01 19:41:09 +01:00
John Wellbelove
b00929ef09
Merge branch 'feature/#581-hash-functions-for-enum' into development
2022-09-01 19:26:35 +01:00
John Wellbelove
a48aa15b60
Formatting
2022-09-01 19:16:24 +01:00
Jesse Li
a38a8fc33c
#227 Hash function for enums ( #581 )
...
* #227 Hash function for enums
* Move enum hash definition to bottom, so gcc doesn't complain about it
* Explicitly specify etl hash
Co-authored-by: Jesse <jli@planarmotor.com>
2022-09-01 19:10:35 +01:00
John Wellbelove
f0862971c1
Merge branch 'hotfix/#585-etl-result-void-being-unusable-due-to-deleted-default-constructor' into development
2022-09-01 18:56:46 +01:00
jeremyerdmann
7d7b7633bd
Fixed IAR build warnings in message_packet ( #587 )
...
IAR was tripping up on the syntax, generating warnings. This addresses that per the discussion in #586 .
Co-authored-by: Jeremy Erdmann <jeremy.erdmann@millerwelds.com>
2022-09-01 18:52:34 +01:00
Eyal Abramovitch
927491c763
Fix etl::result<void> being unusable due to deleted default constructor ( #585 )
2022-08-31 12:43:56 +01:00
John Wellbelove
64fa058f6b
Work in progress
2022-08-26 09:49:13 +01:00
John Wellbelove
5aa14f85aa
Revert "Work in progress"
...
This reverts commit b3a77d6f83088a01969a3164373166d14ce36639.
2022-08-26 09:47:05 +01:00
John Wellbelove
b3a77d6f83
Work in progress
2022-08-26 09:40:54 +01:00
John Wellbelove
868329f9e4
Remove redundant include
2022-08-24 11:27:48 +01:00
John Wellbelove
d3d9dbdbcd
#580 numeric_limits<char> redefinition for gnu c++20
2022-08-24 11:27:12 +01:00
John Wellbelove
d9bff52343
added ETL_NODISCARD to binary_search
2022-08-23 19:46:45 +01:00
John Wellbelove
6a320608b9
class to typename
2022-08-23 19:38:25 +01:00
John Wellbelove
f7cb225857
Fixed conditional compilation
2022-08-23 18:04:40 +01:00
John Wellbelove
69e09299bf
element_t replaced with element_type
2022-08-23 18:03:53 +01:00
John Wellbelove
a03f67a94a
Removed the use of ETL_FORCE_CONSTEXPR_ALGORITHMS as all algorithms may be constexpr.
2022-08-20 13:30:25 +01:00
John Wellbelove
5dc9f49516
Removed the use of ETL_FORCE_CONSTEXPR_ALGORITHMS as all algorithms may be constexpr.
2022-08-20 12:44:34 +01:00
John Wellbelove
c99f2c1068
Renames + optimisations
2022-08-20 12:43:50 +01:00
John Wellbelove
2e7b635bfd
Add asserts in to_string
2022-08-19 22:19:48 +01:00
John Wellbelove
ec4fb59b89
More to_string tests
...
Removed asserts so all functions are noexcept
2022-08-19 10:22:57 +01:00
John Wellbelove
e1bd545391
Major changes complete
2022-08-18 22:02:34 +01:00
John Wellbelove
7868445166
Work in progress
...
Modify specialisations for bitset element types
2022-08-17 20:35:44 +01:00
John Wellbelove
72263a9ced
Work in progress
...
More tests
2022-08-16 18:10:05 +01:00
John Wellbelove
2d9c8ccd2a
Work in progress
...
Start single element optimisations
2022-08-15 16:33:35 +01:00
John Wellbelove
42d272cae4
Work in progress
...
All tests for implicit bitset element type enabled
2022-08-15 14:57:42 +01:00
John Wellbelove
3a4af24ab7
Work in progress
...
Added more CHECK macros
Added bitset_fast class for bitsets that are the same size as an integral type
2022-08-13 12:15:41 +01:00
John Wellbelove
3ee5abf74b
Work in progress
2022-08-12 13:39:24 +01:00
John Wellbelove
2df71e4384
Optimised bitset shift operations
2022-08-09 12:45:29 +01:00
John Wellbelove
ccfce560ae
Optimised shifts
2022-08-09 12:45:29 +01:00
John Wellbelove
e10cd6dab3
Rationalised etl::send_message functions
2022-08-09 12:45:11 +01:00
John Wellbelove
9d33f9bf28
Added ability to set the bitset from wchar_t, char16_t and char32_t
2022-08-05 09:46:09 +01:00
John Wellbelove
86ae10a4ec
Fixed implicit virtual warning for etl::vector
2022-08-04 17:07:19 +01:00
John Wellbelove
debbfddf35
Optimisations and addition of set() for all char types.
2022-08-04 16:31:51 +01:00
John Wellbelove
30d5a1b79b
Added newline at end of file
2022-08-04 15:35:10 +01:00
John Wellbelove
5a9fc4dd00
Fixed C++03 delegate compatibility
2022-08-04 15:33:43 +01:00
John Wellbelove
7e8829d1b0
Changed operator= in etl::string_view from ETL_CONSTEXPR to ETL_CONSTEXPR14
2022-08-04 15:32:54 +01:00
John Wellbelove
87d00ad4d1
Added ARM5 and ARM6 compiler compatibility
2022-08-04 15:31:39 +01:00
John Wellbelove
2da99e81e6
Added missing char_traits unit tests and char_traits bug fixes
2022-08-04 15:31:09 +01:00
John Wellbelove
1b8d5a307a
Changed std::lower_bound to etl::lower_bound
2022-08-04 15:29:59 +01:00
John Wellbelove
7ecd818ecc
Merge branch 'feature/message-broker' of https://github.com/ETLCPP/etl into feature/message-broker
...
# Conflicts:
# include/etl/generators/message_router_generator.h
# include/etl/message_router.h
2022-08-02 14:23:12 +01:00
John Wellbelove
37b8115abf
Added default message id constructors
...
etl::message_router default id is etl::imessage_router::MESSAGE_ROUTER
Added successor parameter constructors
2022-08-02 14:21:30 +01:00
John Wellbelove
19d99aa52d
Added default message id constructors
...
etl::message_router default id is etl::imessage_router::MESSAGE_ROUTER
Added successor parameter constructors
2022-08-02 12:45:11 +01:00
John Wellbelove
fda4d704c3
Minor changes
2022-08-02 11:42:57 +01:00
John Wellbelove
e6a86a6285
Update release info
2022-08-01 16:28:40 +01:00
John Wellbelove
b80835108e
Merge branch 'feature/message-broker' into development
2022-08-01 16:13:05 +01:00
John Wellbelove
3ad60c1e6c
Finished message_broker code
2022-08-01 16:12:33 +01:00
John Wellbelove
838cdc24af
Finished message_broker code
2022-08-01 13:00:20 +01:00
John Wellbelove
40290c4fa2
Partial implementation
2022-07-31 13:55:23 +01:00
John Wellbelove
e5fea50fab
Standardise conditional compilation macros for ETL_USING_CPP11 and ETL_USING_STL
2022-07-31 09:53:34 +01:00
John Wellbelove
fce2b5ca8d
Updated version info
2022-07-28 15:55:57 +01:00
John Wellbelove
1fa2116bd1
#573 more comfortable circular_buffer_ext construction
2022-07-28 15:55:38 +01:00
John Wellbelove
ec98d64697
Updated version info
2022-07-28 11:38:20 +01:00
John Wellbelove
a89db201c5
Merge branch 'development' of https://github.com/ETLCPP/etl into development
2022-07-28 08:23:55 +01:00
benedekkupper
747867f1fa
Bip buffer improvements ( #575 )
...
* bip-buffer-spsc-atomic: read reserve default size is all available data
* bip-buffer-spsc-atomic: add API to write reserve in buffer space optimal way
2022-07-28 08:18:47 +01:00
Xavier
06eb494400
Invoke function pointers w/ parenthesis ( #576 )
2022-07-28 08:03:22 +01:00
John Wellbelove
cd18cc6af0
Eradicated all GCC and clang warnings
2022-07-27 10:42:03 +01:00
Joris Putcuyps
841f4610d0
Fix initialisation order ( #570 )
2022-07-24 19:08:54 +01:00
John Wellbelove
e4cf390956
Updated variant_pool generator
2022-07-24 17:45:37 +01:00
John Wellbelove
ea49e6a80f
Updated generators scripts
2022-07-24 17:43:46 +01:00
John Wellbelove
23bf850785
Updated release versions
2022-07-24 17:26:39 +01:00
John Wellbelove
72740b5225
Fixed swap function for circular_buffer_ext
...
Fixed circular_buffer iterator -> operators
Added functions and macros to etl::debug_count
2022-07-24 17:24:46 +01:00
John Wellbelove
648b2490e0
Comment edits
2022-07-24 13:01:22 +01:00
John Wellbelove
df01759227
Optimised container move for external buffers
2022-07-24 13:01:07 +01:00
John Wellbelove
b2e1c35540
Fixed swap function for circular_buffer_ext
...
Fixed circular_buffer iterator -> operators
Added functions and macros to etl::debug_count
2022-07-24 12:56:44 +01:00
John Wellbelove
4316a4d7af
Added tests for error handler macros
...
Fixed missing value parameter for exception + log configuration
2022-07-24 12:52:58 +01:00
John Wellbelove
adf9d690e1
Updated version and release notes
2022-07-20 14:32:43 +01:00
benedekkupper
e4c6c45772
error-handler: only return when the condition is false ( #567 )
2022-07-20 12:12:44 +01:00
John Wellbelove
93a0a0fe73
Addition of extra ETL_NODISCARD and ETL_NOEXCEPT to etl::span & etl::poly_span.
...
Fixed warnings for initialisation order for some etl::poly_span constructors.
2022-07-17 12:18:04 +01:00
John Wellbelove
4903e0cac8
Added is_enum
2022-07-14 20:14:26 +01:00
John Wellbelove
274a52db52
Merge branch 'feature/is_enum-implementation' into development
2022-07-14 17:59:19 +01:00
John Wellbelove
70e6989c99
Updated message router generator
2022-07-14 17:34:59 +01:00
John Wellbelove
67c2efb85c
Added is_enum
2022-07-14 17:31:20 +01:00
Jesse Li
4d4a3c8ab9
is_enum ( #561 )
2022-07-14 15:38:49 +01:00
John Wellbelove
594255d50f
class to typename
2022-07-14 15:35:26 +01:00
John Wellbelove
150a1f9058
Updated version numbers and release notes
2022-07-14 12:50:37 +01:00
John Wellbelove
1790868830
Merge branch 'feature/poly_span' into development
...
# Conflicts:
# include/etl/span.h
2022-07-14 12:27:25 +01:00
John Wellbelove
bcf147f096
Added etl::poly_span
...
Refacted parts of etl::span
2022-07-14 12:19:08 +01:00
mhx
058e4c9ed2
etl/span.h: prevent compound statements in constexpr methods for C++11 ( #562 )
...
C++11 doesn't support compound statements in constexpr functions
and as a result, `etl/span.h` generates a heap of warnings with
gcc's `-Wpedantic` in C++11 mode. This changes the relevant method
bodies to contain just a single return statement.
2022-07-13 13:48:13 +01:00
John Wellbelove
7cc8d95157
Work in progress
2022-07-12 17:39:16 +01:00
John Wellbelove
21faaa349f
Work in progress
2022-07-12 17:37:08 +01:00
John Wellbelove
870d0fd96a
Green Hills compiler compatibility
2022-07-12 16:32:04 +01:00
John Wellbelove
f05f74fbd1
Work in progress
2022-07-12 13:16:11 +01:00
John Wellbelove
adf9bd5c20
Work in progress
2022-07-10 14:09:46 +01:00
John Wellbelove
9dca59bf40
etl::poly_span without etl::dynamic_extent
2022-07-04 20:24:39 +01:00
John Wellbelove
26d0dd9859
Initial forked code
2022-07-04 20:24:38 +01:00
John Wellbelove
50f5319382
Legacy variant is in namespace etl::legacy if ETL_IN_UNIT_TEST is not defined
2022-07-04 10:46:08 +01:00
John Wellbelove
97f4a34da8
Updated version and release notes
2022-07-03 11:18:47 +01:00
John Wellbelove
638de5bd40
Merge branch 'hotfix/#560-unable-to-upcast-legacy-variant' into development
2022-07-02 21:19:47 +01:00
John Wellbelove
3c07f46158
#560-unable-to-upcast-legacy-variant
...
Refactor of upcast to eliminate upcast_functor
Added is_base_of member function
2022-07-02 21:19:15 +01:00
John Wellbelove
a074b42b91
Added non-member etl::send_message for etl::shared_message
2022-06-27 11:03:23 +01:00
John Wellbelove
b77c7753d3
Updated message_packet_generator.h to match etl::message_packet changes
2022-06-27 10:07:23 +01:00
John Wellbelove
c5d41f9d87
Updated message_packet_generator.h
2022-06-24 19:39:40 +01:00
John Wellbelove
2c6c46ee18
Updated versions
2022-06-24 16:28:48 +01:00
John Wellbelove
c0923e1d6a
Fix to message_packet
...
Fix tests for atomic under GCC
2022-06-24 15:59:25 +01:00
John Wellbelove
1b3445d11a
Fixed etl::message_packet issues
2022-06-24 14:58:53 +01:00
John Wellbelove
3c26ffea4e
dded etl::byte_stream_overflow assert to byte_stream_reader 'skip'.
2022-06-23 19:49:20 +01:00
John Wellbelove
829d9fa220
Renamed cumulative_moving _average to pseudo_moving_average
...
Modified etl::debounce internal enumeration names to avoid clashes with Arduino
2022-06-22 17:37:59 +01:00
John Wellbelove
c2ba195092
Updated version information
2022-06-22 14:10:39 +01:00
John Wellbelove
d4a3af56a7
const_reference parameter for resize()
2022-06-22 11:19:40 +01:00
John Wellbelove
22060623fc
Added skip functions
2022-06-22 10:05:14 +01:00
John Wellbelove
c49f56722c
Added two new traits to get a standard signed or unsigned integral of the same size as the template type.
2022-06-22 10:01:38 +01:00
John Wellbelove
08d76a9d56
Added size_bits() to bit_stream reader
2022-06-21 09:00:20 +01:00
John Wellbelove
ad2f95ac79
Optimisations
2022-06-20 09:25:39 +01:00
John Wellbelove
5a460f7fec
Latest refactoring
...
Added little endian bit stream reader tests
2022-06-19 18:37:20 +01:00
John Wellbelove
fefe6d3975
Added endianness to bit_stream_writer
2022-06-18 20:57:26 +01:00
John Wellbelove
bf49fe60e6
Finished bit_stream_reader tests
2022-06-15 11:43:55 +01:00
John Wellbelove
f88999bb12
Latest updates to bit_stream_reader
2022-06-15 11:43:54 +01:00
John Wellbelove
6a8cdf6892
Added error exceptions to byte_stream_writer
2022-06-15 11:43:54 +01:00
John Wellbelove
557544892c
Renamed ETL_ALWAYS_ASSERT to ETL_ASSERT_FAIL
2022-06-15 11:43:54 +01:00
John Wellbelove
0e6dff2767
Added callback functionality to bit_stream_writer
2022-06-15 11:43:54 +01:00
John Wellbelove
e9c6bf689e
Fixed cast
2022-06-15 11:43:53 +01:00
John Wellbelove
9e0ff809fd
Initial bit_stream_writer code
2022-06-15 11:43:12 +01:00
John Wellbelove
bb3190452c
Added ETL_NODISCARD to 'create' and 'is_valid' functions
2022-06-15 11:38:43 +01:00
John Wellbelove
ce76e1b628
Merge branch 'feature/variant-visit' into development
...
# Conflicts:
# include/etl/private/variant_legacy.h
# include/etl/private/variant_variadic.h
# test/vs2019/etl.vcxproj.filters
2022-06-14 11:47:50 +01:00
John Wellbelove
314cb452f7
Merge branch 'feature/variant-visit' into development
...
# Conflicts:
# include/etl/private/variant_legacy.h
# include/etl/private/variant_variadic.h
# test/vs2019/etl.vcxproj.filters
2022-06-14 11:47:30 +01:00
John Wellbelove
c6e31f381f
Added tests
2022-06-14 09:54:17 +01:00
John Wellbelove
03c97b64fe
Updated copyright authors
2022-06-10 21:48:12 +01:00
John Wellbelove
baa47d1c33
Updated copyright notice
2022-06-10 21:45:37 +01:00
John Wellbelove
cf24398209
Refactor etl::atomic implementations to allow non-(integrals/pointers/bool)
...
Changed etl::atomic and etl::mutex, with STL enabled, to be template aliases
2022-06-10 21:45:34 +01:00
John Wellbelove
047fc3eb90
Refactor C++17 message_packet
2022-06-10 21:45:34 +01:00
John Wellbelove
e864fe62d5
Added optional byte_stream callback
2022-06-10 21:45:33 +01:00
John Wellbelove
4b0abaec6b
Remove duplicate void_t definition
2022-06-10 21:44:47 +01:00
Robin Söderholm
0ace9654da
Feature/variant visit ( #554 )
...
* add variant visit to c++11 and above
* visit legacy added
* update with multiple variants visit for variadic
* make it build on gcc and clang ubuntu
remove declval from utility.h due to ambiguity against type_traits.h version when using STL
2022-06-10 18:56:18 +01:00
John Wellbelove
9c4d8d6f1d
Fixed duplicate etl::declval definition.
2022-06-10 18:53:48 +01:00
Ashley Roll
aad52bb91c
Fix comment in queue::del_out ( #553 )
...
Seems it was copied from stack implementation, but queue increments out
not, decrements it.
2022-06-10 15:11:12 +01:00
John Wellbelove
dd89f1c748
Interim changes after PR
2022-06-10 11:18:48 +01:00
Robin Söderholm
89be7e62cf
Feature/variant visit ( #552 )
...
* add variant visit to c++11 and above
* visit legacy added
* update with multiple variants visit for variadic
2022-06-09 08:56:55 +01:00
gerschdn
8669afec86
Update vector.h ( #551 )
...
Made the value parameter to resize() a const_reference instead of a value type to spare the unnecessary copy
2022-06-03 17:10:52 +01:00
John Wellbelove
752d9adb5c
Fixed final sanitizer issues
2022-05-19 11:10:00 +01:00
John Wellbelove
aaf1f84935
Updates to etl::successor
2022-05-18 16:49:42 +01:00
John Wellbelove
7bb39b56bf
Added skip() to byte_stream_writer.
2022-05-17 17:04:47 +01:00
John Wellbelove
645296b925
#545 Option to make string truncation an error." generates compiling warnings
2022-05-17 15:20:39 +01:00
John Wellbelove
c09a1885b5
Merge branch 'hot-fix/#536-undefined-behaviour-and-memory-issues' into development
...
# Conflicts:
# test/CMakeLists.txt
2022-05-17 15:03:05 +01:00
John Wellbelove
da58dfe018
Added conditional compilation directive for existence 8 bit types
2022-05-17 10:42:31 +01:00
John Wellbelove
9224df106e
Fixed data alignment issues raised by sanitizer
2022-05-16 20:58:07 +01:00
John Wellbelove
0d4c663d0b
64 bit conversion type fixes
2022-05-16 20:56:25 +01:00
John Wellbelove
7b3bb5fa6d
Fixed incorrect returned span length for byte stream read
2022-05-15 18:01:44 +01:00
John Wellbelove
7c3d8490c4
indirect_vector updates from sanitizer results
2022-05-13 14:43:36 +01:00
John Wellbelove
87f40fe813
Updates to etl::successor and derived classes.
2022-05-11 16:04:25 +01:00
John Wellbelove
44db411d0d
Multiple sanitizer fixes.
2022-05-08 11:10:42 +01:00
John Wellbelove
882bbab022
Minor updates
...
Revert some #536 code
2022-04-29 10:29:22 +01:00
Jeremy Overesch
8ac2db0dbe
Feature/pass partial handled events to parent ( #541 )
...
* Pass partial handled events to parent.
* Fix the generator file for C++17.
2022-04-28 15:29:11 +01:00
John Wellbelove
ce40641baf
Squashed commit of the following:
...
commit 2c3b225972d2d1182133ed9f55bd8aaa58650338
Author: Thomas Sommer <thomas@tomsaw.de>
Date: Mon Apr 25 10:54:10 2022 +0200
removed unused irouter instanciation (#537 )
commit 5468eb659c8b4ecdb3d08e8b8f0442c5a2549a48
Author: Gabriel Arjones <arjones@arjones.com>
Date: Thu Apr 14 17:55:27 2022 -0300
cmake: write an arch independent version file (#534 )
2022-04-25 11:06:09 +02:00
John Wellbelove
90e4316f8f
Interim fixes
2022-04-25 10:30:54 +02:00
John Wellbelove
36d126c93e
Squashed commit of the following:
...
commit c217b3ec12b26104e8f1027c1766cc9d49b93a29
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date: Thu Apr 21 11:57:55 2022 +0200
Added mutex traits
Added transparent comparator test to multimap
commit b6487b869e5599ea067d45af1778d5c0f90c6a52
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date: Thu Apr 21 10:42:06 2022 +0200
Modified char8_t, char16_t and char32_t macros.
Added conditional compilation on the presense of native char8_t, char16_t and char32_t types.
commit 2c2bd86ce3d5d5d698e922518421a93f70a9cc1e
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date: Thu Apr 21 10:29:04 2022 +0200
Modified char8_t, char16_t and char32_t macros.
Added conditional compilation on the presense of native char8_t, char16_t and char32_t types.
commit d16242d20e9b6df6752a926d862d0016a452bada
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date: Wed Apr 20 13:53:37 2022 +0200
Expanded constexpr test
commit fad097e6656cd4639c2d81bc8cad2467cae4b4ce
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date: Wed Apr 20 13:53:05 2022 +0200
Added ETL_OVERRIDE to state chart process_event()
commit 25403c2225f3aff0b99105a54cfc44f1cf88d527
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date: Wed Apr 20 13:41:00 2022 +0200
Added test_etl_traits
commit e42c778cf645cb8fc06e5930336e7f1183004dfe
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date: Wed Apr 20 13:38:22 2022 +0200
Removed unused code.
commit 5a25c0c1973f7094ef3aa5b6f29529e96450451c
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date: Sun Apr 17 13:17:29 2022 +0200
Large and small character support macros
commit 6a463fb65ef655b700a8dea381265a3c1b622658
Author: Melg Eight <public.melg8@gmail.com>
Date: Sun Apr 17 13:54:34 2022 +0300
Fix spelling (#535 )
Signed-off-by: Melg Eight <public.melg8@gmail.com>
commit 5468eb659c8b4ecdb3d08e8b8f0442c5a2549a48
Author: Gabriel Arjones <arjones@arjones.com>
Date: Thu Apr 14 17:55:27 2022 -0300
cmake: write an arch independent version file (#534 )
2022-04-21 12:11:26 +02:00
John Wellbelove
05e85b9e90
Added mutex traits
...
Added transparent comparator test to multimap
2022-04-21 11:57:55 +02:00
John Wellbelove
e44d1ad01d
Modified char8_t, char16_t and char32_t macros.
...
Added conditional compilation on the presense of native char8_t, char16_t and char32_t types.
2022-04-21 10:42:06 +02:00
John Wellbelove
cd9d199dde
Modified char8_t, char16_t and char32_t macros.
...
Added conditional compilation on the presense of native char8_t, char16_t and char32_t types.
2022-04-21 10:29:04 +02:00
John Wellbelove
7cefbc941a
Added ETL_OVERRIDE to state chart process_event()
2022-04-20 13:53:05 +02:00
John Wellbelove
63c05fb6b9
Large and small character support macros
2022-04-17 13:17:29 +02:00
John Wellbelove
42acd8beaa
#531 Fixed: Compilation of etl::reference_counted_message_pool with ETL_LOG_ERROR enabled due to non-public inheritance.
2022-04-11 12:35:47 +02:00
valentink-eroad
70cc720fae
Fix compilation of reference_counted_message_pool with ETL_LOG_ERRORS enabled ( #531 )
2022-04-11 11:25:25 +02:00
John Wellbelove
0c78d38958
#529 Optimised min_element, max_element and min_max_element implementations
2022-04-09 22:38:35 +02:00
John Wellbelove
f68b3d7796
Lastest release script version
2022-04-09 21:38:35 +02:00
John Wellbelove
3b66ced782
#530 etl::nth_type not implemented correctly
2022-04-08 18:08:53 +02:00
John Wellbelove
ce93358e95
Lastest release script version
2022-04-08 09:37:21 +02:00
John Wellbelove
3f1c640eff
cplusplus traits is now 'long'
2022-04-01 11:55:32 +02:00
John Wellbelove
b18d32f77b
Merge branch 'hotfix/optimise-circular-buffer-push-and-pop' into development
2022-03-26 18:30:59 +00:00
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
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