diff --git a/include/etl/algorithm.h b/include/etl/algorithm.h index 06a2f7b1..cb287de1 100644 --- a/include/etl/algorithm.h +++ b/include/etl/algorithm.h @@ -38,15 +38,15 @@ SOFTWARE. /// Additional new variants of certain algorithms. ///\ingroup utilities -#include -#include - #include "platform.h" #include "type_traits.h" #include "iterator.h" #include "functional.h" #include "utility.h" +#include +#include + #include "private/minmax_push.h" #if ETL_USING_STL diff --git a/include/etl/alignment.h b/include/etl/alignment.h index 2e3b626e..a5ccb9af 100644 --- a/include/etl/alignment.h +++ b/include/etl/alignment.h @@ -31,12 +31,12 @@ SOFTWARE. #ifndef ETL_ALIGNMENT_INCLUDED #define ETL_ALIGNMENT_INCLUDED -#include - #include "platform.h" #include "type_traits.h" #include "static_assert.h" +#include + ///\defgroup alignment alignment /// Creates a variable of the specified type at the specified alignment. /// \ingroup utilities diff --git a/include/etl/array.h b/include/etl/array.h index f94b94fc..1435ddbb 100644 --- a/include/etl/array.h +++ b/include/etl/array.h @@ -31,10 +31,7 @@ SOFTWARE. #ifndef ETL_ARRAY_INCLUDED #define ETL_ARRAY_INCLUDED -#include - #include "platform.h" - #include "algorithm.h" #include "iterator.h" #include "functional.h" @@ -46,6 +43,8 @@ SOFTWARE. #include "nth_type.h" #include "initializer_list.h" +#include + ///\defgroup array array /// A replacement for std::array if you haven't got C++0x11. ///\ingroup containers diff --git a/include/etl/basic_string.h b/include/etl/basic_string.h index d1fee188..44892033 100644 --- a/include/etl/basic_string.h +++ b/include/etl/basic_string.h @@ -31,12 +31,7 @@ SOFTWARE. #ifndef ETL_BASIC_STRING_INCLUDED #define ETL_BASIC_STRING_INCLUDED -#include -#include -#include - #include "platform.h" - #include "algorithm.h" #include "iterator.h" #include "functional.h" @@ -53,6 +48,10 @@ SOFTWARE. #include "binary.h" #include "flags.h" +#include +#include +#include + #include "private/minmax_push.h" //***************************************************************************** diff --git a/include/etl/bip_buffer_spsc_atomic.h b/include/etl/bip_buffer_spsc_atomic.h index c22bd771..dad24114 100644 --- a/include/etl/bip_buffer_spsc_atomic.h +++ b/include/etl/bip_buffer_spsc_atomic.h @@ -38,9 +38,6 @@ SOFTWARE. #ifndef ETL_BIP_BUFFER_SPSC_ATOMIC_INCLUDED #define ETL_BIP_BUFFER_SPSC_ATOMIC_INCLUDED -#include -#include - #include "platform.h" #include "alignment.h" #include "parameter_type.h" @@ -53,6 +50,9 @@ SOFTWARE. #include "span.h" #include "file_error_numbers.h" +#include +#include + #if ETL_HAS_ATOMIC namespace etl diff --git a/include/etl/bit.h b/include/etl/bit.h index 602b9141..b1d4f39e 100644 --- a/include/etl/bit.h +++ b/include/etl/bit.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_BIT_INCLUDED #define ETL_BIT_INCLUDED -#include - #include "platform.h" #include "type_traits.h" #include "binary.h" @@ -40,6 +38,8 @@ SOFTWARE. #include "endianness.h" #include "type_traits.h" +#include + #if ETL_USING_CPP20 && ETL_USING_STL #include #endif diff --git a/include/etl/bit_stream.h b/include/etl/bit_stream.h index 8b43b3a6..5135cab5 100644 --- a/include/etl/bit_stream.h +++ b/include/etl/bit_stream.h @@ -26,9 +26,6 @@ SOFTWARE. #ifndef ETL_BIT_STREAM_INCLUDED #define ETL_BIT_STREAM_INCLUDED -#include -#include - #include "platform.h" #include "type_traits.h" #include "nullptr.h" @@ -44,6 +41,9 @@ SOFTWARE. #include "exception.h" #include "error_handler.h" +#include +#include + #include "private/minmax_push.h" namespace etl diff --git a/include/etl/bresenham_line.h b/include/etl/bresenham_line.h index 89452a78..a519ea3b 100644 --- a/include/etl/bresenham_line.h +++ b/include/etl/bresenham_line.h @@ -31,14 +31,14 @@ SOFTWARE. #ifndef ETL_BRESENHAM_LINE_INCLUDED #define ETL_BRESENHAM_LINE_INCLUDED -#include - #include "platform.h" #include "iterator.h" #include "static_assert.h" #include "type_traits.h" #include "utility.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/byte_stream.h b/include/etl/byte_stream.h index 83bc521b..934a8a45 100644 --- a/include/etl/byte_stream.h +++ b/include/etl/byte_stream.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_BYTE_STREAM_INCLUDED #define ETL_BYTE_STREAM_INCLUDED -#include -#include - #include "platform.h" #include "type_traits.h" #include "nullptr.h" @@ -49,6 +46,9 @@ SOFTWARE. #include "exception.h" #include "error_handler.h" +#include +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/callback_timer.h b/include/etl/callback_timer.h index 3d524c57..12acb1f0 100644 --- a/include/etl/callback_timer.h +++ b/include/etl/callback_timer.h @@ -29,8 +29,6 @@ SOFTWARE. #ifndef ETL_CALLBACK_TIMER_INCLUDED #define ETL_CALLBACK_TIMER_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "nullptr.h" @@ -42,6 +40,8 @@ SOFTWARE. #include "placement_new.h" #include "delegate.h" +#include + #if defined(ETL_IN_UNIT_TEST) && ETL_NOT_USING_STL #define ETL_DISABLE_TIMER_UPDATES #define ETL_ENABLE_TIMER_UPDATES diff --git a/include/etl/callback_timer_atomic.h b/include/etl/callback_timer_atomic.h index ff2d861d..650d8ae3 100644 --- a/include/etl/callback_timer_atomic.h +++ b/include/etl/callback_timer_atomic.h @@ -29,10 +29,7 @@ SOFTWARE. #ifndef ETL_CALLBACK_TIMER_ATOMIC_INCLUDED #define ETL_CALLBACK_TIMER_ATOMIC_INCLUDED -#include - #include "platform.h" - #include "algorithm.h" #include "nullptr.h" #include "function.h" @@ -42,6 +39,8 @@ SOFTWARE. #include "placement_new.h" #include "delegate.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/callback_timer_interrupt.h b/include/etl/callback_timer_interrupt.h index 8a97024e..02ebd933 100644 --- a/include/etl/callback_timer_interrupt.h +++ b/include/etl/callback_timer_interrupt.h @@ -29,10 +29,7 @@ SOFTWARE. #ifndef ETL_CALLBACK_TIMER_INTERRUPT_INCLUDED #define ETL_CALLBACK_TIMER_INTERRUPT_INCLUDED -#include - #include "platform.h" - #include "algorithm.h" #include "nullptr.h" #include "delegate.h" @@ -41,6 +38,8 @@ SOFTWARE. #include "error_handler.h" #include "placement_new.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/callback_timer_locked.h b/include/etl/callback_timer_locked.h index fb4f380e..ad6eacd9 100644 --- a/include/etl/callback_timer_locked.h +++ b/include/etl/callback_timer_locked.h @@ -29,10 +29,7 @@ SOFTWARE. #ifndef ETL_CALLBACK_TIMER_LOCKED_INCLUDED #define ETL_CALLBACK_TIMER_LOCKED_INCLUDED -#include - #include "platform.h" - #include "algorithm.h" #include "nullptr.h" #include "delegate.h" @@ -41,6 +38,8 @@ SOFTWARE. #include "error_handler.h" #include "placement_new.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/char_traits.h b/include/etl/char_traits.h index 3cf2ed45..41b5dd4e 100644 --- a/include/etl/char_traits.h +++ b/include/etl/char_traits.h @@ -31,12 +31,12 @@ SOFTWARE. #ifndef ETL_CHAR_TRAITS_INCLUDED #define ETL_CHAR_TRAITS_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" +#include + //***************************************************************************** ///\defgroup char_traits char_traits /// Character traits diff --git a/include/etl/checksum.h b/include/etl/checksum.h index 3f0fa3e8..4cb83399 100644 --- a/include/etl/checksum.h +++ b/include/etl/checksum.h @@ -27,12 +27,12 @@ SOFTWARE. #ifndef ETL_CHECKSUM_INCLUDED #define ETL_CHECKSUM_INCLUDED -#include - #include "platform.h" #include "binary.h" #include "frame_check_sequence.h" +#include + ///\defgroup checksum Checksum calculation ///\ingroup maths diff --git a/include/etl/container.h b/include/etl/container.h index f7e21454..f9200c99 100644 --- a/include/etl/container.h +++ b/include/etl/container.h @@ -31,10 +31,10 @@ SOFTWARE. #ifndef ETL_CONTAINER_INCLUDED #define ETL_CONTAINER_INCLUDED -#include - #include "platform.h" #include "iterator.h" +#include + #endif diff --git a/include/etl/cyclic_value.h b/include/etl/cyclic_value.h index 8f2b353a..086ce9e7 100644 --- a/include/etl/cyclic_value.h +++ b/include/etl/cyclic_value.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_CYCLIC_VALUE_INCLUDED #define ETL_CYCLIC_VALUE_INCLUDED -#include - ///\defgroup cyclic_value cyclic_value /// Provides a value that cycles between two limits. /// \ingroup utilities @@ -42,9 +40,10 @@ SOFTWARE. #include "exception.h" #include "static_assert.h" #include "type_traits.h" - #include "algorithm.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/debounce.h b/include/etl/debounce.h index 5fc461be..aad3ff40 100644 --- a/include/etl/debounce.h +++ b/include/etl/debounce.h @@ -31,11 +31,11 @@ SOFTWARE. #ifndef ETL_DEBOUNCE_INCLUDED #define ETL_DEBOUNCE_INCLUDED -#include - #include "platform.h" #include "static_assert.h" +#include + namespace etl { namespace private_debounce diff --git a/include/etl/debug_count.h b/include/etl/debug_count.h index 33ef568a..2eeba536 100644 --- a/include/etl/debug_count.h +++ b/include/etl/debug_count.h @@ -31,12 +31,12 @@ SOFTWARE. #ifndef ETL_DEBUG_COUNT_INCLUDED #define ETL_DEBUG_COUNT_INCLUDED +#include "platform.h" +#include "atomic.h" + #include #include -#include "atomic.h" -#include "platform.h" - ///\defgroup debug_count debug count ///\ingroup utilities diff --git a/include/etl/deque.h b/include/etl/deque.h index 6f3f3ce1..8a514e27 100644 --- a/include/etl/deque.h +++ b/include/etl/deque.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_DEQUE_INCLUDED #define ETL_DEQUE_INCLUDED -#include -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" @@ -48,6 +45,9 @@ SOFTWARE. #include "placement_new.h" #include "initializer_list.h" +#include +#include + #include "private/minmax_push.h" //***************************************************************************** diff --git a/include/etl/endianness.h b/include/etl/endianness.h index 459df58d..1b758bea 100644 --- a/include/etl/endianness.h +++ b/include/etl/endianness.h @@ -31,12 +31,12 @@ SOFTWARE. #ifndef ETL_ENDIAN_INCLUDED #define ETL_ENDIAN_INCLUDED -#include - #include "platform.h" #include "enum_type.h" #include "binary.h" +#include + #if ETL_USING_CPP20 && ETL_USING_STL #include #endif diff --git a/include/etl/error_handler.h b/include/etl/error_handler.h index 5bedd4ae..0a0f40e7 100644 --- a/include/etl/error_handler.h +++ b/include/etl/error_handler.h @@ -36,13 +36,13 @@ SOFTWARE. /// Error handler for when throwing exceptions is not required. ///\ingroup utilities -#include - #include "platform.h" #include "exception.h" #include "function.h" #include "nullptr.h" +#include + #if defined(ETL_LOG_ERRORS) || defined(ETL_IN_UNIT_TEST) namespace etl { diff --git a/include/etl/factorial.h b/include/etl/factorial.h index 9852c5c5..43446aa1 100644 --- a/include/etl/factorial.h +++ b/include/etl/factorial.h @@ -31,10 +31,10 @@ SOFTWARE. #ifndef ETL_FACTORIAL_INCLUDED #define ETL_FACTORIAL_INCLUDED -#include - #include "platform.h" +#include + ///\defgroup factorial factorial /// fibonacci : Calculates the Nth factorial value. ///\ingroup maths diff --git a/include/etl/fibonacci.h b/include/etl/fibonacci.h index 1a15974b..9105f8ad 100644 --- a/include/etl/fibonacci.h +++ b/include/etl/fibonacci.h @@ -31,10 +31,10 @@ SOFTWARE. #ifndef ETL_FIBONACCI_INCLUDED #define ETL_FIBONACCI_INCLUDED -#include - #include "platform.h" +#include + ///\defgroup fibonacci fibonacci /// fibonacci : Calculates the Nth Fibonacci value. ///\ingroup maths diff --git a/include/etl/flags.h b/include/etl/flags.h index 4d5b75d2..5bdf2aaa 100644 --- a/include/etl/flags.h +++ b/include/etl/flags.h @@ -31,10 +31,6 @@ SOFTWARE. #ifndef ETL_FLAGS_INCLUDED #define ETL_FLAGS_INCLUDED -#include -#include -#include - #include "platform.h" #include "algorithm.h" #include "type_traits.h" @@ -42,6 +38,10 @@ SOFTWARE. #include "static_assert.h" #include "initializer_list.h" +#include +#include +#include + namespace etl { //************************************************************************* diff --git a/include/etl/fnv_1.h b/include/etl/fnv_1.h index 85cc1dc1..f64c1064 100644 --- a/include/etl/fnv_1.h +++ b/include/etl/fnv_1.h @@ -31,14 +31,13 @@ SOFTWARE. #ifndef ETL_FNV_1_INCLUDED #define ETL_FNV_1_INCLUDED -#include - #include "platform.h" #include "static_assert.h" #include "type_traits.h" #include "ihash.h" #include "frame_check_sequence.h" +#include #if defined(ETL_COMPILER_KEIL) #pragma diag_suppress 1300 diff --git a/include/etl/forward_list.h b/include/etl/forward_list.h index a4b077c3..68337fc5 100644 --- a/include/etl/forward_list.h +++ b/include/etl/forward_list.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_FORWARD_LIST_INCLUDED #define ETL_FORWARD_LIST_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" @@ -50,6 +48,8 @@ SOFTWARE. #include "placement_new.h" #include "initializer_list.h" +#include + #include "private/minmax_push.h" //***************************************************************************** diff --git a/include/etl/frame_check_sequence.h b/include/etl/frame_check_sequence.h index df85d00c..dd639550 100644 --- a/include/etl/frame_check_sequence.h +++ b/include/etl/frame_check_sequence.h @@ -27,15 +27,14 @@ SOFTWARE. #ifndef ETL_FRAME_CHECK_SEQUENCE_INCLUDED #define ETL_FRAME_CHECK_SEQUENCE_INCLUDED -#include - #include "platform.h" #include "static_assert.h" #include "type_traits.h" #include "binary.h" - #include "iterator.h" +#include + ETL_STATIC_ASSERT(ETL_USING_8BIT_TYPES, "This file does not currently support targets with no 8bit type"); ///\defgroup frame_check_sequence Frame check sequence calculation diff --git a/include/etl/fsm.h b/include/etl/fsm.h index 1a2b435f..b7f2f915 100644 --- a/include/etl/fsm.h +++ b/include/etl/fsm.h @@ -51,8 +51,6 @@ SOFTWARE. #ifndef ETL_FSM_INCLUDED #define ETL_FSM_INCLUDED -#include - #include "platform.h" #include "array.h" #include "nullptr.h" @@ -63,6 +61,8 @@ SOFTWARE. #include "integral_limits.h" #include "largest.h" +#include + #include "private/minmax_push.h" namespace etl diff --git a/include/etl/generators/fsm_generator.h b/include/etl/generators/fsm_generator.h index 685eefbc..a510de99 100644 --- a/include/etl/generators/fsm_generator.h +++ b/include/etl/generators/fsm_generator.h @@ -63,8 +63,6 @@ cog.outl("//******************************************************************** #ifndef ETL_FSM_INCLUDED #define ETL_FSM_INCLUDED -#include - #include "platform.h" #include "array.h" #include "nullptr.h" @@ -75,6 +73,8 @@ cog.outl("//******************************************************************** #include "integral_limits.h" #include "largest.h" +#include + #include "private/minmax_push.h" namespace etl diff --git a/include/etl/generators/message_router_generator.h b/include/etl/generators/message_router_generator.h index b9c2a799..1bfe767a 100644 --- a/include/etl/generators/message_router_generator.h +++ b/include/etl/generators/message_router_generator.h @@ -63,8 +63,6 @@ cog.outl("//******************************************************************** #ifndef ETL_MESSAGE_ROUTER_INCLUDED #define ETL_MESSAGE_ROUTER_INCLUDED -#include - #include "platform.h" #include "message.h" #include "shared_message.h" @@ -79,6 +77,8 @@ cog.outl("//******************************************************************** #include "successor.h" #include "type_traits.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/generators/smallest_generator.h b/include/etl/generators/smallest_generator.h index d0c9228c..055fff13 100644 --- a/include/etl/generators/smallest_generator.h +++ b/include/etl/generators/smallest_generator.h @@ -65,11 +65,11 @@ cog.outl("//******************************************************************** #ifndef ETL_SMALLEST_INCLUDED #define ETL_SMALLEST_INCLUDED -#include - #include "platform.h" #include "integral_limits.h" +#include + ///\defgroup smallest smallest ///\ingroup utilities diff --git a/include/etl/generators/type_lookup_generator.h b/include/etl/generators/type_lookup_generator.h index 2b9b9905..2563729a 100644 --- a/include/etl/generators/type_lookup_generator.h +++ b/include/etl/generators/type_lookup_generator.h @@ -29,14 +29,14 @@ SOFTWARE. #ifndef ETL_TYPE_LOOKUP_INCLUDED #define ETL_TYPE_LOOKUP_INCLUDED -#include - #include "platform.h" #include "type_traits.h" #include "static_assert.h" #include "integral_limits.h" #include "null_type.h" +#include + /*[[[cog import cog cog.outl("#if 0") diff --git a/include/etl/generators/type_traits_generator.h b/include/etl/generators/type_traits_generator.h index d81909d7..b7e16d8d 100644 --- a/include/etl/generators/type_traits_generator.h +++ b/include/etl/generators/type_traits_generator.h @@ -65,13 +65,13 @@ cog.outl("//******************************************************************** #ifndef ETL_TYPE_TRAITS_INCLUDED #define ETL_TYPE_TRAITS_INCLUDED -#include -#include - #include "platform.h" #include "nullptr.h" #include "static_assert.h" +#include +#include + ///\defgroup type_traits type_traits /// A set of type traits definitions. /// Derived from either the standard or alternate definitions, dependant on whether or not ETL_NO_STL is defined. diff --git a/include/etl/generators/variant_pool_generator.h b/include/etl/generators/variant_pool_generator.h index 22f7dc3e..1bbd1f77 100644 --- a/include/etl/generators/variant_pool_generator.h +++ b/include/etl/generators/variant_pool_generator.h @@ -63,14 +63,14 @@ cog.outl("//******************************************************************** #ifndef ETL_VARIANT_POOL_INCLUDED #define ETL_VARIANT_POOL_INCLUDED -#include - #include "platform.h" #include "pool.h" #include "type_traits.h" #include "static_assert.h" #include "largest.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/hash.h b/include/etl/hash.h index 5ba1cfe9..86d0b797 100644 --- a/include/etl/hash.h +++ b/include/etl/hash.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_HASH_INCLUDED #define ETL_HASH_INCLUDED -#include -#include - #include "platform.h" #if ETL_USING_8BIT_TYPES @@ -43,6 +40,9 @@ SOFTWARE. #include "type_traits.h" #include "static_assert.h" +#include +#include + ///\defgroup hash Standard hash calculations ///\ingroup maths diff --git a/include/etl/ihash.h b/include/etl/ihash.h index cbbbe752..a73f7297 100644 --- a/include/etl/ihash.h +++ b/include/etl/ihash.h @@ -31,15 +31,13 @@ SOFTWARE. #ifndef ETL_IHASH_INCLUDED #define ETL_IHASH_INCLUDED -#include - #include "platform.h" - #include "utility.h" - #include "exception.h" #include "error_handler.h" +#include + ///\defgroup ihash Common data for all hash type classes. ///\ingroup hash diff --git a/include/etl/instance_count.h b/include/etl/instance_count.h index 1717ed98..608ec3c9 100644 --- a/include/etl/instance_count.h +++ b/include/etl/instance_count.h @@ -31,10 +31,10 @@ SOFTWARE. #ifndef ETL_INSTANCE_COUNT_INCLUDED #define ETL_INSTANCE_COUNT_INCLUDED -#include - #include "platform.h" +#include + ///\defgroup instance_count instance count ///\ingroup utilities diff --git a/include/etl/integral_limits.h b/include/etl/integral_limits.h index 033e991d..ab4884ef 100644 --- a/include/etl/integral_limits.h +++ b/include/etl/integral_limits.h @@ -31,12 +31,12 @@ SOFTWARE. #ifndef ETL_INTEGRAL_LIMITS_INCLUDED #define ETL_INTEGRAL_LIMITS_INCLUDED -#include -#include - #include "platform.h" #include "type_traits.h" +#include +#include + #include "private/minmax_push.h" //***************************************************************************** diff --git a/include/etl/intrusive_forward_list.h b/include/etl/intrusive_forward_list.h index 997081b3..da74970b 100644 --- a/include/etl/intrusive_forward_list.h +++ b/include/etl/intrusive_forward_list.h @@ -32,23 +32,18 @@ SOFTWARE. #define ETL_INTRUSIVE_FORWARD_LIST_INCLUDED #include "platform.h" - #include "algorithm.h" #include "iterator.h" #include "functional.h" - -#include "private/minmax_push.h" - -#include - -#include "platform.h" #include "nullptr.h" #include "type_traits.h" #include "exception.h" #include "error_handler.h" #include "intrusive_links.h" -#include "algorithm.h" -#include "iterator.h" + +#include + +#include "private/minmax_push.h" namespace etl { diff --git a/include/etl/intrusive_links.h b/include/etl/intrusive_links.h index c6c7caa7..c234c0d8 100644 --- a/include/etl/intrusive_links.h +++ b/include/etl/intrusive_links.h @@ -31,17 +31,16 @@ SOFTWARE. #ifndef ETL_INTRUSIVE_LINKS_INCLUDED #define ETL_INTRUSIVE_LINKS_INCLUDED -#include - #include "platform.h" #include "nullptr.h" #include "type_traits.h" #include "exception.h" #include "error_handler.h" - #include "utility.h" #include "algorithm.h" +#include + //***************************************************************************** // Note: // The link functions work slightly differently to the STL 'insert' convention diff --git a/include/etl/intrusive_list.h b/include/etl/intrusive_list.h index f55ddca9..800c9d8e 100644 --- a/include/etl/intrusive_list.h +++ b/include/etl/intrusive_list.h @@ -31,12 +31,6 @@ SOFTWARE. #ifndef ETL_INTRUSIVE_LIST_INCLUDED #define ETL_INTRUSIVE_LIST_INCLUDED -#include "platform.h" - -#include "private/minmax_push.h" - -#include - #include "platform.h" #include "nullptr.h" #include "type_traits.h" @@ -44,13 +38,14 @@ SOFTWARE. #include "error_handler.h" #include "intrusive_links.h" #include "static_assert.h" -#include "algorithm.h" -#include "iterator.h" - #include "algorithm.h" #include "iterator.h" #include "functional.h" +#include + +#include "private/minmax_push.h" + namespace etl { //*************************************************************************** diff --git a/include/etl/intrusive_queue.h b/include/etl/intrusive_queue.h index 235b166b..7268d326 100644 --- a/include/etl/intrusive_queue.h +++ b/include/etl/intrusive_queue.h @@ -31,13 +31,13 @@ SOFTWARE. #ifndef ETL_INTRUSIVE_QUEUE_INCLUDED #define ETL_INTRUSIVE_QUEUE_INCLUDED -#include - #include "platform.h" #include "type_traits.h" #include "error_handler.h" #include "intrusive_links.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/intrusive_stack.h b/include/etl/intrusive_stack.h index e10df258..694a7ed1 100644 --- a/include/etl/intrusive_stack.h +++ b/include/etl/intrusive_stack.h @@ -31,13 +31,13 @@ SOFTWARE. #ifndef ETL_INTRUSIVE_STACK_INCLUDED #define ETL_INTRUSIVE_STACK_INCLUDED -#include - #include "platform.h" #include "type_traits.h" #include "error_handler.h" #include "intrusive_links.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/io_port.h b/include/etl/io_port.h index 807b172f..e18347bd 100644 --- a/include/etl/io_port.h +++ b/include/etl/io_port.h @@ -35,13 +35,11 @@ SOFTWARE. /// IO port access ///\ingroup utilities -#include - #include "platform.h" #include "nullptr.h" #include "iterator.h" -#include "iterator.h" +#include namespace etl { diff --git a/include/etl/jenkins.h b/include/etl/jenkins.h index eea45171..6e368779 100644 --- a/include/etl/jenkins.h +++ b/include/etl/jenkins.h @@ -31,17 +31,16 @@ SOFTWARE. #ifndef ETL_JENKINS_INCLUDED #define ETL_JENKINS_INCLUDED -#include - #include "platform.h" #include "static_assert.h" #include "type_traits.h" #include "error_handler.h" #include "ihash.h" #include "frame_check_sequence.h" - #include "iterator.h" +#include + #if defined(ETL_COMPILER_KEIL) #pragma diag_suppress 1300 #endif diff --git a/include/etl/list.h b/include/etl/list.h index c6a52561..6ba5070a 100644 --- a/include/etl/list.h +++ b/include/etl/list.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_LIST_INCLUDED #define ETL_LIST_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" @@ -51,6 +49,8 @@ SOFTWARE. #include "placement_new.h" #include "initializer_list.h" +#include + #include "private/minmax_push.h" //***************************************************************************** diff --git a/include/etl/log.h b/include/etl/log.h index 32518b40..e0490263 100644 --- a/include/etl/log.h +++ b/include/etl/log.h @@ -31,10 +31,10 @@ SOFTWARE. #ifndef ETL_LOG_INCLUDED #define ETL_LOG_INCLUDED -#include - #include "platform.h" +#include + ///\defgroup log log /// log : Calculates logs to any base, rounded down to the nearest integer.
/// log2 : Calculates logs to base 2, rounded down to the nearest integer.
diff --git a/include/etl/map.h b/include/etl/map.h index 66379ca2..3c0ba2b5 100644 --- a/include/etl/map.h +++ b/include/etl/map.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_MAP_INCLUDED #define ETL_MAP_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" @@ -50,6 +48,8 @@ SOFTWARE. #include "placement_new.h" #include "initializer_list.h" +#include + #include "private/minmax_push.h" #include "private/comparator_is_transparent.h" diff --git a/include/etl/mem_cast.h b/include/etl/mem_cast.h index 2fe3afb6..d611dab2 100644 --- a/include/etl/mem_cast.h +++ b/include/etl/mem_cast.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_MEM_CAST_INCLUDED #define ETL_MEM_CAST_INCLUDED -#include -#include - #include "platform.h" #include "memory.h" #include "static_assert.h" @@ -45,6 +42,9 @@ SOFTWARE. #include "file_error_numbers.h" #include "binary.h" +#include +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/memory_model.h b/include/etl/memory_model.h index d1c66286..4cf720f8 100644 --- a/include/etl/memory_model.h +++ b/include/etl/memory_model.h @@ -31,10 +31,12 @@ SOFTWARE. #ifndef ETL_MEMORY_MODEL_INCLUDED #define ETL_MEMORY_MODEL_INCLUDED +#include "platform.h" #include "user_type.h" -#include #include "type_lookup.h" +#include + namespace etl { ETL_DECLARE_USER_TYPE(memory_model, int) diff --git a/include/etl/message.h b/include/etl/message.h index 366ca993..aeebb35b 100644 --- a/include/etl/message.h +++ b/include/etl/message.h @@ -29,8 +29,6 @@ SOFTWARE. #ifndef ETL_MESSAGE_INCLUDED #define ETL_MESSAGE_INCLUDED -#include - #include "platform.h" #include "error_handler.h" #include "exception.h" @@ -38,6 +36,8 @@ SOFTWARE. #include "type_traits.h" #include "static_assert.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/message_broker.h b/include/etl/message_broker.h index b2988243..abedc8e1 100644 --- a/include/etl/message_broker.h +++ b/include/etl/message_broker.h @@ -29,8 +29,6 @@ SOFTWARE. #ifndef ETL_MESSAGE_BROKER_INCLUDED #define ETL_MESSAGE_BROKER_INCLUDED -#include - #include "platform.h" #include "nullptr.h" #include "message_types.h" @@ -38,6 +36,8 @@ SOFTWARE. #include "message_router.h" #include "span.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/message_bus.h b/include/etl/message_bus.h index 11815096..64b7958b 100644 --- a/include/etl/message_bus.h +++ b/include/etl/message_bus.h @@ -29,7 +29,6 @@ SOFTWARE. #ifndef ETL_MESSAGE_BUS_INCLUDED #define ETL_MESSAGE_BUS_INCLUDED -#include #include "platform.h" #include "algorithm.h" #include "vector.h" @@ -40,6 +39,8 @@ SOFTWARE. #include "message.h" #include "message_router.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/message_router.h b/include/etl/message_router.h index 98e18d2a..e5f9e12c 100644 --- a/include/etl/message_router.h +++ b/include/etl/message_router.h @@ -51,8 +51,6 @@ SOFTWARE. #ifndef ETL_MESSAGE_ROUTER_INCLUDED #define ETL_MESSAGE_ROUTER_INCLUDED -#include - #include "platform.h" #include "message.h" #include "shared_message.h" @@ -67,6 +65,8 @@ SOFTWARE. #include "successor.h" #include "type_traits.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/message_router_registry.h b/include/etl/message_router_registry.h index c0c89985..e538435a 100644 --- a/include/etl/message_router_registry.h +++ b/include/etl/message_router_registry.h @@ -29,8 +29,6 @@ SOFTWARE. #ifndef ETL_MESSAGE_ROUTER_REGISTRY_INCLUDED #define ETL_MESSAGE_ROUTER_REGISTRY_INCLUDED -#include - #include "platform.h" #include "file_error_numbers.h" #include "message_router.h" @@ -40,6 +38,8 @@ SOFTWARE. #include "iterator.h" #include "memory.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/message_timer.h b/include/etl/message_timer.h index 326c3d20..97d0bd76 100644 --- a/include/etl/message_timer.h +++ b/include/etl/message_timer.h @@ -29,9 +29,6 @@ SOFTWARE. #ifndef ETL_MESSAGE_TIMER_INCLUDED #define ETL_MESSAGE_TIMER_INCLUDED -#include -#include "algorithm.h" - #include "platform.h" #include "nullptr.h" #include "message_types.h" @@ -41,6 +38,9 @@ SOFTWARE. #include "static_assert.h" #include "timer.h" #include "atomic.h" +#include "algorithm.h" + +#include #if defined(ETL_IN_UNIT_TEST) && ETL_NOT_USING_STL #define ETL_DISABLE_TIMER_UPDATES diff --git a/include/etl/message_timer_atomic.h b/include/etl/message_timer_atomic.h index b67728d4..e8ba0555 100644 --- a/include/etl/message_timer_atomic.h +++ b/include/etl/message_timer_atomic.h @@ -29,9 +29,6 @@ SOFTWARE. #ifndef ETL_MESSAGE_TIMER_ATOMIC_INCLUDED #define ETL_MESSAGE_TIMER_ATOMIC_INCLUDED -#include -#include "algorithm.h" - #include "platform.h" #include "nullptr.h" #include "message_types.h" @@ -41,6 +38,9 @@ SOFTWARE. #include "static_assert.h" #include "timer.h" #include "atomic.h" +#include "algorithm.h" + +#include #if ETL_HAS_ATOMIC diff --git a/include/etl/message_timer_interrupt.h b/include/etl/message_timer_interrupt.h index 88f2e13f..2390f3f2 100644 --- a/include/etl/message_timer_interrupt.h +++ b/include/etl/message_timer_interrupt.h @@ -29,9 +29,6 @@ SOFTWARE. #ifndef ETL_MESSAGE_TIMER_INTERRUPT_INCLUDED #define ETL_MESSAGE_TIMER_INTERRUPT_INCLUDED -#include -#include "algorithm.h" - #include "platform.h" #include "nullptr.h" #include "message_types.h" @@ -41,6 +38,9 @@ SOFTWARE. #include "static_assert.h" #include "timer.h" #include "delegate.h" +#include "algorithm.h" + +#include namespace etl { diff --git a/include/etl/message_timer_locked.h b/include/etl/message_timer_locked.h index 81b9aaff..731df313 100644 --- a/include/etl/message_timer_locked.h +++ b/include/etl/message_timer_locked.h @@ -29,9 +29,6 @@ SOFTWARE. #ifndef ETL_MESSAGE_TIMER_LOCKED_INCLUDED #define ETL_MESSAGE_TIMER_LOCKED_INCLUDED -#include -#include "algorithm.h" - #include "platform.h" #include "nullptr.h" #include "message_types.h" @@ -41,6 +38,9 @@ SOFTWARE. #include "static_assert.h" #include "timer.h" #include "delegate.h" +#include "algorithm.h" + +#include namespace etl { diff --git a/include/etl/message_types.h b/include/etl/message_types.h index ae20e64a..7a422850 100644 --- a/include/etl/message_types.h +++ b/include/etl/message_types.h @@ -29,10 +29,10 @@ SOFTWARE. #ifndef ETL_MESSAGE_DEFS_INCLUDED #define ETL_MESSAGE_DEFS_INCLUDED -#include - #include "platform.h" +#include + namespace etl { /// Allow alternative type for message id. diff --git a/include/etl/multimap.h b/include/etl/multimap.h index 11f03464..cf4639a7 100644 --- a/include/etl/multimap.h +++ b/include/etl/multimap.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_MULTIMAP_INCLUDED #define ETL_MULTIMAP_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" @@ -50,6 +48,8 @@ SOFTWARE. #include "placement_new.h" #include "initializer_list.h" +#include + #include "private/minmax_push.h" #include "private/comparator_is_transparent.h" diff --git a/include/etl/multiset.h b/include/etl/multiset.h index 585b40eb..92d33796 100644 --- a/include/etl/multiset.h +++ b/include/etl/multiset.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_MULTISET_INCLUDED #define ETL_MULTISET_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" @@ -49,6 +47,8 @@ SOFTWARE. #include "placement_new.h" #include "initializer_list.h" +#include + #include "private/minmax_push.h" #include "private/comparator_is_transparent.h" diff --git a/include/etl/murmur3.h b/include/etl/murmur3.h index 18fa491d..8ef6aae1 100644 --- a/include/etl/murmur3.h +++ b/include/etl/murmur3.h @@ -31,13 +31,13 @@ SOFTWARE. #ifndef ETL_MURMUR3_INCLUDED #define ETL_MURMUR3_INCLUDED -#include - #include "platform.h" #include "ihash.h" #include "binary.h" #include "error_handler.h" +#include + #if defined(ETL_COMPILER_KEIL) #pragma diag_suppress 1300 #endif diff --git a/include/etl/null_type.h b/include/etl/null_type.h index 863c1ad7..31ae246a 100644 --- a/include/etl/null_type.h +++ b/include/etl/null_type.h @@ -29,6 +29,8 @@ SOFTWARE. #ifndef ETL_NULL_TYPE_INCLUDED #define ETL_NULL_TYPE_INCLUDED +#include "platform.h" + #include namespace etl diff --git a/include/etl/parameter_pack.h b/include/etl/parameter_pack.h index a439dad4..e5760453 100644 --- a/include/etl/parameter_pack.h +++ b/include/etl/parameter_pack.h @@ -29,11 +29,11 @@ SOFTWARE. #ifndef ETL_PARAMETER_PACK #define ETL_PARAMETER_PACK -#include - #include "platform.h" #include "type_traits.h" +#include + #if ETL_CPP11_NOT_SUPPORTED #if !defined(ETL_IN_UNIT_TEST) #error NOT SUPPORTED FOR C++03 OR BELOW diff --git a/include/etl/pearson.h b/include/etl/pearson.h index f5bf0640..7d740fdd 100644 --- a/include/etl/pearson.h +++ b/include/etl/pearson.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_PEARSON_INCLUDED #define ETL_PEARSON_INCLUDED -#include - #include "platform.h" #include "static_assert.h" #include "type_traits.h" @@ -40,6 +38,8 @@ SOFTWARE. #include "array.h" #include "iterator.h" +#include + ETL_STATIC_ASSERT(ETL_USING_8BIT_TYPES, "This file does not currently support targets with no 8bit type"); #if defined(ETL_COMPILER_KEIL) diff --git a/include/etl/power.h b/include/etl/power.h index c539835b..7816dd88 100644 --- a/include/etl/power.h +++ b/include/etl/power.h @@ -31,12 +31,12 @@ SOFTWARE. #ifndef ETL_POW_INCLUDED #define ETL_POW_INCLUDED -#include -#include - #include "platform.h" #include "log.h" +#include +#include + ///\defgroup power power /// power : Calculates N to the power POWER. ///\ingroup maths diff --git a/include/etl/priority_queue.h b/include/etl/priority_queue.h index 766d6693..46be2901 100644 --- a/include/etl/priority_queue.h +++ b/include/etl/priority_queue.h @@ -31,10 +31,7 @@ SOFTWARE. #ifndef ETL_PRIORITY_QUEUE_INCLUDED #define ETL_PRIORITY_QUEUE_INCLUDED -#include - #include "platform.h" - #include "algorithm.h" #include "utility.h" #include "functional.h" @@ -45,6 +42,8 @@ SOFTWARE. #include "error_handler.h" #include "exception.h" +#include + //***************************************************************************** ///\defgroup queue queue /// A priority queue with the capacity defined at compile time, diff --git a/include/etl/private/bitset_legacy.h b/include/etl/private/bitset_legacy.h index 78c8f4c4..53aa3829 100644 --- a/include/etl/private/bitset_legacy.h +++ b/include/etl/private/bitset_legacy.h @@ -31,10 +31,6 @@ SOFTWARE. #ifndef ETL_BITSET_LEGACY_INCLUDED #define ETL_BITSET_LEGACY_INCLUDED -#include -#include -#include - #include "../platform.h" #include "../algorithm.h" #include "../iterator.h" @@ -51,6 +47,10 @@ SOFTWARE. #include "../span.h" #include "../string.h" +#include +#include +#include + #include "minmax_push.h" #if defined(ETL_COMPILER_KEIL) diff --git a/include/etl/private/bitset_new.h b/include/etl/private/bitset_new.h index 03347b63..9bad0f3e 100644 --- a/include/etl/private/bitset_new.h +++ b/include/etl/private/bitset_new.h @@ -31,10 +31,6 @@ SOFTWARE. #ifndef ETL_BITSET_NEW_INCLUDED #define ETL_BITSET_NEW_INCLUDED -#include -#include -#include - #include "../platform.h" #include "../algorithm.h" #include "../iterator.h" @@ -51,6 +47,10 @@ SOFTWARE. #include "../span.h" #include "../string.h" +#include +#include +#include + #include "minmax_push.h" #if defined(ETL_COMPILER_KEIL) diff --git a/include/etl/private/minmax_pop.h b/include/etl/private/minmax_pop.h index 0f47adee..bf8ac02e 100644 --- a/include/etl/private/minmax_pop.h +++ b/include/etl/private/minmax_pop.h @@ -32,7 +32,7 @@ SOFTWARE. * The header include guard has been intentionally omitted. * This file is intended to evaluated multiple times by design. */ -#if !defined(ETL_COMPILER_GREEN_HILLS) && !defined(__ICCAVR__) +#if !defined(ETL_COMPILER_GREEN_HILLS) && !defined(ETL_COMPILER_ICCAVR) #if !defined(ETL_COMPILER_ARM5) #pragma pop_macro("min") #pragma pop_macro("max") diff --git a/include/etl/private/minmax_push.h b/include/etl/private/minmax_push.h index b954948b..e1db6981 100644 --- a/include/etl/private/minmax_push.h +++ b/include/etl/private/minmax_push.h @@ -33,7 +33,7 @@ SOFTWARE. * This file is intended to evaluated multiple times by design. */ -#if !defined(ETL_COMPILER_GREEN_HILLS) && !defined(__ICCAVR__) +#if !defined(ETL_COMPILER_GREEN_HILLS) && !defined(ETL_COMPILER_ICCAVR) #if !defined(ETL_COMPILER_ARM5) #pragma push_macro("min") #pragma push_macro("max") diff --git a/include/etl/private/pvoidvector.h b/include/etl/private/pvoidvector.h index 243dde75..882dc110 100644 --- a/include/etl/private/pvoidvector.h +++ b/include/etl/private/pvoidvector.h @@ -33,17 +33,16 @@ SOFTWARE. #define ETL_IN_PVOIDVECTOR -#include - #include "../platform.h" #include "../algorithm.h" #include "vector_base.h" #include "../type_traits.h" #include "../error_handler.h" - #include "../functional.h" #include "../iterator.h" +#include + #include "minmax_push.h" namespace etl diff --git a/include/etl/private/to_string_helper.h b/include/etl/private/to_string_helper.h index 69b10f63..4105f647 100644 --- a/include/etl/private/to_string_helper.h +++ b/include/etl/private/to_string_helper.h @@ -33,8 +33,6 @@ SOFTWARE. ///\ingroup private -#include - #include "../platform.h" #include "../absolute.h" #include "../negative.h" @@ -46,6 +44,8 @@ SOFTWARE. #include "../iterator.h" #include "../limits.h" +#include + #if ETL_USING_STL && ETL_USING_CPP11 #include // For std::begin, std::end and std::size #endif diff --git a/include/etl/private/variant_legacy.h b/include/etl/private/variant_legacy.h index 319d5d8f..93aa8e0a 100644 --- a/include/etl/private/variant_legacy.h +++ b/include/etl/private/variant_legacy.h @@ -28,8 +28,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ******************************************************************************/ -#include - #include "../platform.h" #include "../utility.h" #include "../array.h" @@ -43,6 +41,8 @@ SOFTWARE. #include "../null_type.h" #include "../placement_new.h" +#include + #if defined(ETL_COMPILER_KEIL) #pragma diag_suppress 940 #pragma diag_suppress 111 diff --git a/include/etl/private/variant_variadic.h b/include/etl/private/variant_variadic.h index 622eb92c..6b1e50e8 100644 --- a/include/etl/private/variant_variadic.h +++ b/include/etl/private/variant_variadic.h @@ -28,8 +28,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ******************************************************************************/ -#include - #include "../platform.h" #include "../utility.h" #include "../largest.h" @@ -45,6 +43,8 @@ SOFTWARE. #include "../memory.h" #include "../initializer_list.h" +#include + #if defined(ETL_COMPILER_KEIL) #pragma diag_suppress 940 #pragma diag_suppress 111 diff --git a/include/etl/private/vector_base.h b/include/etl/private/vector_base.h index cb45df0f..d55a41a1 100644 --- a/include/etl/private/vector_base.h +++ b/include/etl/private/vector_base.h @@ -35,13 +35,13 @@ SOFTWARE. #ifndef ETL_VECTOR_BASE_INCLUDED #define ETL_VECTOR_BASE_INCLUDED -#include - #include "../platform.h" #include "../exception.h" #include "../error_handler.h" #include "../debug_count.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/profiles/determine_compiler.h b/include/etl/profiles/determine_compiler.h index e94548ad..d2127157 100644 --- a/include/etl/profiles/determine_compiler.h +++ b/include/etl/profiles/determine_compiler.h @@ -31,6 +31,9 @@ SOFTWARE. #ifndef ETL_DETERMINE_COMPILER_H_INCLUDED #define ETL_DETERMINE_COMPILER_H_INCLUDED +//***************************************************************************** +// Macros that are conditionally defined. +//***************************************************************************** #if !defined(ETL_COMPILER_GCC) && \ !defined(ETL_COMPILER_MICROSOFT) && \ !defined(ETL_COMPILER_ARM5) && \ @@ -109,6 +112,13 @@ SOFTWARE. #endif #endif + #if !defined(ETL_COMPILER_TYPE_DETECTED) && !defined(ETL_COMPILER_ICCAVR) + #if defined(__ICCAVR__) + #define ETL_COMPILER_ICCAVR + #define ETL_COMPILER_TYPE_DETECTED + #endif + #endif + #if !defined(ETL_COMPILER_TYPE_DETECTED) && !defined(ETL_COMPILER_MICROSOFT) #if defined(_MSC_VER) #define ETL_COMPILER_MICROSOFT @@ -121,12 +131,21 @@ SOFTWARE. #endif #endif +//***************************************************************************** +// 'Using' macros that are always defined. +//***************************************************************************** #if defined(ETL_COMPILER_GCC) #define ETL_USING_GCC_COMPILER 1 #else #define ETL_USING_GCC_COMPILER 0 #endif +#if defined(ETL_COMPILER_ICCAVR) + #define ETL_USING_ICCAVR_COMPILER 1 +#else + #define ETL_USING_ICCAVR_COMPILER 0 +#endif + #if defined(ETL_COMPILER_MICROSOFT) #define ETL_USING_MICROSOFT_COMPILER 1 #else diff --git a/include/etl/profiles/determine_compiler_version.h b/include/etl/profiles/determine_compiler_version.h index 6835a75e..2a5f9761 100644 --- a/include/etl/profiles/determine_compiler_version.h +++ b/include/etl/profiles/determine_compiler_version.h @@ -37,6 +37,9 @@ SOFTWARE. #if defined(ETL_COMPILER_GCC) #define ETL_COMPILER_VERSION __GNUC__ #define ETL_COMPILER_FULL_VERSION ((__GNUC__ * 10000) + (__GNUC_MINOR__ * 100) + __GNUC_PATCHLEVEL__) + #elif defined(ETL_COMPILER_ICCAVR) + #define ETL_COMPILER_VERSION __VER__ + #define ETL_COMPILER_FULL_VERSION __VER__ #elif defined(ETL_COMPILER_MICROSOFT) #define ETL_COMPILER_VERSION _MSC_VER #define ETL_COMPILER_FULL_VERSION _MSC_FULL_VER diff --git a/include/etl/queue.h b/include/etl/queue.h index 4d19d8be..1dcd7685 100644 --- a/include/etl/queue.h +++ b/include/etl/queue.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_QUEUE_INCLUDED #define ETL_QUEUE_INCLUDED -#include -#include - #include "platform.h" #include "iterator.h" #include "alignment.h" @@ -48,6 +45,9 @@ SOFTWARE. #include "utility.h" #include "placement_new.h" +#include +#include + //***************************************************************************** ///\defgroup queue queue /// A First-in / first-out queue with the capacity defined at compile time, diff --git a/include/etl/queue_lockable.h b/include/etl/queue_lockable.h index 9f1602c0..f3e525c5 100644 --- a/include/etl/queue_lockable.h +++ b/include/etl/queue_lockable.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_QUEUE_LOCKABLE_INCLUDED #define ETL_QUEUE_LOCKABLE_INCLUDED -#include -#include - #include "platform.h" #include "memory.h" #include "parameter_type.h" @@ -43,6 +40,9 @@ SOFTWARE. #include "utility.h" #include "placement_new.h" +#include +#include + namespace etl { template diff --git a/include/etl/queue_mpmc_mutex.h b/include/etl/queue_mpmc_mutex.h index c8d510a7..318506ed 100644 --- a/include/etl/queue_mpmc_mutex.h +++ b/include/etl/queue_mpmc_mutex.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_MPMC_QUEUE_MUTEX_INCLUDED #define ETL_MPMC_QUEUE_MUTEX_INCLUDED -#include -#include - #include "platform.h" #include "mutex.h" @@ -46,6 +43,9 @@ SOFTWARE. #include "utility.h" #include "placement_new.h" +#include +#include + namespace etl { template diff --git a/include/etl/queue_spsc_atomic.h b/include/etl/queue_spsc_atomic.h index 864cc9a3..84febb7b 100644 --- a/include/etl/queue_spsc_atomic.h +++ b/include/etl/queue_spsc_atomic.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_SPSC_QUEUE_ATOMIC_INCLUDED #define ETL_SPSC_QUEUE_ATOMIC_INCLUDED -#include -#include - #include "platform.h" #include "alignment.h" #include "parameter_type.h" @@ -43,6 +40,9 @@ SOFTWARE. #include "utility.h" #include "placement_new.h" +#include +#include + #if ETL_HAS_ATOMIC namespace etl diff --git a/include/etl/queue_spsc_isr.h b/include/etl/queue_spsc_isr.h index ab8b1c10..5a2b04aa 100644 --- a/include/etl/queue_spsc_isr.h +++ b/include/etl/queue_spsc_isr.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_SPSC_QUEUE_ISR_INCLUDED #define ETL_SPSC_QUEUE_ISR_INCLUDED -#include -#include - #include "platform.h" #include "alignment.h" #include "parameter_type.h" @@ -42,6 +39,9 @@ SOFTWARE. #include "utility.h" #include "placement_new.h" +#include +#include + namespace etl { template diff --git a/include/etl/queue_spsc_locked.h b/include/etl/queue_spsc_locked.h index b9b4224e..ad3e1a72 100644 --- a/include/etl/queue_spsc_locked.h +++ b/include/etl/queue_spsc_locked.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_SPSC_QUEUE_LOCKED_INCLUDED #define ETL_SPSC_QUEUE_LOCKED_INCLUDED -#include -#include - #include "platform.h" #include "memory.h" #include "parameter_type.h" @@ -43,6 +40,9 @@ SOFTWARE. #include "utility.h" #include "placement_new.h" +#include +#include + namespace etl { template diff --git a/include/etl/radix.h b/include/etl/radix.h index c21f1aab..63bf47f3 100644 --- a/include/etl/radix.h +++ b/include/etl/radix.h @@ -31,11 +31,11 @@ SOFTWARE. #ifndef ETL_RADIX_INCLUDED #define ETL_RADIX_INCLUDED -#include - #include "platform.h" #include "enum_type.h" +#include + ///\defgroup radix radix /// Radix constants for binary, octal, decimal and hex. ///\ingroup etl diff --git a/include/etl/random.h b/include/etl/random.h index fa0571c2..0bca835e 100644 --- a/include/etl/random.h +++ b/include/etl/random.h @@ -31,11 +31,11 @@ SOFTWARE. #ifndef ETL_RANDOM_INCLUDED #define ETL_RANDOM_INCLUDED -#include - #include "platform.h" #include "binary.h" +#include + namespace etl { #if defined(ETL_POLYMORPHIC_RANDOM) diff --git a/include/etl/ratio.h b/include/etl/ratio.h index a4dc504d..b5483606 100644 --- a/include/etl/ratio.h +++ b/include/etl/ratio.h @@ -31,11 +31,11 @@ SOFTWARE. #ifndef ETL_RATIO_INCLUDED #define ETL_RATIO_INCLUDED +#include "platform.h" + #include #include -#include "platform.h" - ///\defgroup ratio ratio ///\ingroup maths diff --git a/include/etl/reference_counted_message.h b/include/etl/reference_counted_message.h index cd06726c..69c35e2f 100644 --- a/include/etl/reference_counted_message.h +++ b/include/etl/reference_counted_message.h @@ -29,8 +29,6 @@ SOFTWARE. #ifndef ETL_REFERENCE_COUNTED_MESSAGE_INCLUDED #define ETL_REFERENCE_COUNTED_MESSAGE_INCLUDED -#include - #include "platform.h" #include "message.h" #include "atomic.h" @@ -39,6 +37,8 @@ SOFTWARE. #include "type_traits.h" #include "ireference_counted_message_pool.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/reference_counted_object.h b/include/etl/reference_counted_object.h index b99c8f45..3f22cc99 100644 --- a/include/etl/reference_counted_object.h +++ b/include/etl/reference_counted_object.h @@ -29,11 +29,11 @@ #ifndef ETL_REFERENCE_COUNTED_OBJECT_INCLUDED #define ETL_REFERENCE_COUNTED_OBJECT_INCLUDED -#include - #include "platform.h" #include "atomic.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/reference_flat_map.h b/include/etl/reference_flat_map.h index 7c4a41a0..0b0d070a 100644 --- a/include/etl/reference_flat_map.h +++ b/include/etl/reference_flat_map.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_REFERENCE_FLAT_MAP_INCLUDED #define ETL_REFERENCE_FLAT_MAP_INCLUDED -#include - #include "platform.h" #include "vector.h" #include "error_handler.h" @@ -47,6 +45,8 @@ SOFTWARE. #include "private/comparator_is_transparent.h" +#include + //***************************************************************************** ///\defgroup reference_flat_map reference_flat_map /// An reference_flat_map with the capacity defined at compile time. diff --git a/include/etl/reference_flat_multimap.h b/include/etl/reference_flat_multimap.h index b207635f..b12b4a07 100644 --- a/include/etl/reference_flat_multimap.h +++ b/include/etl/reference_flat_multimap.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_REFERENCE_FLAT_MULTIMAP_INCLUDED #define ETL_REFERENCE_FLAT_MULTIMAP_INCLUDED -#include - #include "platform.h" #include "exception.h" #include "error_handler.h" @@ -45,6 +43,8 @@ SOFTWARE. #include "private/comparator_is_transparent.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/reference_flat_multiset.h b/include/etl/reference_flat_multiset.h index 1ed5f8f4..e1501d53 100644 --- a/include/etl/reference_flat_multiset.h +++ b/include/etl/reference_flat_multiset.h @@ -31,10 +31,7 @@ SOFTWARE. #ifndef ETL_REFERENCE_FLAT_MULTISET_INCLUDED #define ETL_REFERENCE_FLAT_MULTISET_INCLUDED -#include - #include "platform.h" - #include "algorithm.h" #include "iterator.h" #include "functional.h" @@ -48,6 +45,8 @@ SOFTWARE. #include "private/comparator_is_transparent.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/reference_flat_set.h b/include/etl/reference_flat_set.h index 5a6126bd..69a2ced7 100644 --- a/include/etl/reference_flat_set.h +++ b/include/etl/reference_flat_set.h @@ -31,10 +31,7 @@ SOFTWARE. #ifndef ETL_REFERENCE_FLAT_SET_INCLUDED #define ETL_REFERENCE_FLAT_SET_INCLUDED -#include - #include "platform.h" - #include "algorithm.h" #include "iterator.h" #include "functional.h" @@ -49,6 +46,8 @@ SOFTWARE. #include "private/comparator_is_transparent.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/scheduler.h b/include/etl/scheduler.h index 8abf6bf2..d6015195 100644 --- a/include/etl/scheduler.h +++ b/include/etl/scheduler.h @@ -29,8 +29,6 @@ SOFTWARE. #ifndef ETL_SCHEDULER_INCLUDED #define ETL_SCHEDULER_INCLUDED -#include - #include "platform.h" #include "vector.h" #include "nullptr.h" @@ -40,6 +38,8 @@ SOFTWARE. #include "type_traits.h" #include "function.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/set.h b/include/etl/set.h index 0fac988c..d21c14b8 100644 --- a/include/etl/set.h +++ b/include/etl/set.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_SET_INCLUDED #define ETL_SET_INCLUDED -#include - #include "platform.h" #include "pool.h" #include "exception.h" @@ -51,6 +49,9 @@ SOFTWARE. #include "initializer_list.h" #include "private/comparator_is_transparent.h" + +#include + #include "private/minmax_push.h" //***************************************************************************** diff --git a/include/etl/smallest.h b/include/etl/smallest.h index 8c10acb9..376bc564 100644 --- a/include/etl/smallest.h +++ b/include/etl/smallest.h @@ -53,11 +53,11 @@ SOFTWARE. #ifndef ETL_SMALLEST_INCLUDED #define ETL_SMALLEST_INCLUDED -#include - #include "platform.h" #include "integral_limits.h" +#include + ///\defgroup smallest smallest ///\ingroup utilities diff --git a/include/etl/sqrt.h b/include/etl/sqrt.h index 62976faa..18b13db5 100644 --- a/include/etl/sqrt.h +++ b/include/etl/sqrt.h @@ -31,12 +31,12 @@ SOFTWARE. #ifndef ETL_SQRT_INCLUDED #define ETL_SQRT_INCLUDED -#include - #include "platform.h" #include "type_traits.h" #include "constant.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/stack.h b/include/etl/stack.h index 512d612a..54006192 100644 --- a/include/etl/stack.h +++ b/include/etl/stack.h @@ -31,9 +31,6 @@ SOFTWARE. #ifndef ETL_STACK_INCLUDED #define ETL_STACK_INCLUDED -#include -#include - #include "platform.h" #include "algorithm.h" #include "utility.h" @@ -46,6 +43,9 @@ SOFTWARE. #include "type_traits.h" #include "placement_new.h" +#include +#include + //***************************************************************************** ///\defgroup stack stack /// A Last-in / first-out stack with the capacity defined at compile time, diff --git a/include/etl/state_chart.h b/include/etl/state_chart.h index 8ef23e42..a55230ff 100644 --- a/include/etl/state_chart.h +++ b/include/etl/state_chart.h @@ -29,14 +29,14 @@ SOFTWARE. #ifndef ETL_STATE_CHART_INCLUDED #define ETL_STATE_CHART_INCLUDED -#include - #include "platform.h" #include "nullptr.h" #include "array.h" #include "array_view.h" #include "utility.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/string_utilities.h b/include/etl/string_utilities.h index 83213a68..e3df4698 100644 --- a/include/etl/string_utilities.h +++ b/include/etl/string_utilities.h @@ -38,11 +38,11 @@ SOFTWARE. #include "char_traits.h" #include "optional.h" -#include "private/minmax_push.h" - #include #include +#include "private/minmax_push.h" + namespace etl { //*************************************************************************** diff --git a/include/etl/string_view.h b/include/etl/string_view.h index 78e78097..48bf25ec 100644 --- a/include/etl/string_view.h +++ b/include/etl/string_view.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_STRING_VIEW_INCLUDED #define ETL_STRING_VIEW_INCLUDED -#include - #include "platform.h" #include "memory.h" #include "iterator.h" @@ -45,6 +43,8 @@ SOFTWARE. #include "algorithm.h" #include "private/minmax_push.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/task.h b/include/etl/task.h index b4048df7..35badb27 100644 --- a/include/etl/task.h +++ b/include/etl/task.h @@ -29,12 +29,12 @@ SOFTWARE. #ifndef ETL_TASK_INCLUDED #define ETL_TASK_INCLUDED -#include - #include "platform.h" #include "error_handler.h" #include "exception.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/timer.h b/include/etl/timer.h index 4980d4ff..6b9411cf 100644 --- a/include/etl/timer.h +++ b/include/etl/timer.h @@ -29,12 +29,11 @@ SOFTWARE. #ifndef ETL_TIMER_INCLUDED #define ETL_TIMER_INCLUDED -#include - #include "platform.h" - #include "atomic.h" +#include + //***************************************************************************** // Definitions common to timers. //***************************************************************************** diff --git a/include/etl/type_lookup.h b/include/etl/type_lookup.h index 94991ca2..55337455 100644 --- a/include/etl/type_lookup.h +++ b/include/etl/type_lookup.h @@ -29,14 +29,14 @@ SOFTWARE. #ifndef ETL_TYPE_LOOKUP_INCLUDED #define ETL_TYPE_LOOKUP_INCLUDED -#include - #include "platform.h" #include "type_traits.h" #include "static_assert.h" #include "integral_limits.h" #include "null_type.h" +#include + #if 0 #error THIS HEADER IS A GENERATOR. DO NOT INCLUDE. #endif diff --git a/include/etl/type_traits.h b/include/etl/type_traits.h index b2604563..3ef8d979 100644 --- a/include/etl/type_traits.h +++ b/include/etl/type_traits.h @@ -53,13 +53,13 @@ SOFTWARE. #ifndef ETL_TYPE_TRAITS_INCLUDED #define ETL_TYPE_TRAITS_INCLUDED -#include -#include - #include "platform.h" #include "nullptr.h" #include "static_assert.h" +#include +#include + ///\defgroup type_traits type_traits /// A set of type traits definitions. /// Derived from either the standard or alternate definitions, dependant on whether or not ETL_NO_STL is defined. diff --git a/include/etl/unordered_map.h b/include/etl/unordered_map.h index 864bf199..bc0ff25a 100644 --- a/include/etl/unordered_map.h +++ b/include/etl/unordered_map.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_UNORDERED_MAP_INCLUDED #define ETL_UNORDERED_MAP_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" @@ -54,6 +52,8 @@ SOFTWARE. #include "placement_new.h" #include "initializer_list.h" +#include + //***************************************************************************** ///\defgroup unordered_map unordered_map /// A unordered_map with the capacity defined at compile time. diff --git a/include/etl/unordered_multimap.h b/include/etl/unordered_multimap.h index 5f865252..26e9bf2e 100644 --- a/include/etl/unordered_multimap.h +++ b/include/etl/unordered_multimap.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_UNORDERED_MULTIMAP_INCLUDED #define ETL_UNORDERED_MULTIMAP_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" @@ -54,6 +52,8 @@ SOFTWARE. #include "placement_new.h" #include "initializer_list.h" +#include + //***************************************************************************** ///\defgroup unordered_multimap unordered_multimap /// A unordered_multimap with the capacity defined at compile time. diff --git a/include/etl/unordered_multiset.h b/include/etl/unordered_multiset.h index 69bcf1f4..e2470a18 100644 --- a/include/etl/unordered_multiset.h +++ b/include/etl/unordered_multiset.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_UNORDERED_MULTISET_INCLUDED #define ETL_UNORDERED_MULTISET_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" @@ -53,6 +51,8 @@ SOFTWARE. #include "placement_new.h" #include "initializer_list.h" +#include + //***************************************************************************** ///\defgroup unordered_multiset unordered_multiset /// A unordered_multiset with the capacity defined at compile time. diff --git a/include/etl/unordered_set.h b/include/etl/unordered_set.h index 9f269c06..ca917b0a 100644 --- a/include/etl/unordered_set.h +++ b/include/etl/unordered_set.h @@ -31,8 +31,6 @@ SOFTWARE. #ifndef ETL_UNORDERED_SET_INCLUDED #define ETL_UNORDERED_SET_INCLUDED -#include - #include "platform.h" #include "algorithm.h" #include "iterator.h" @@ -54,6 +52,8 @@ SOFTWARE. #include "placement_new.h" #include "initializer_list.h" +#include + //***************************************************************************** ///\defgroup unordered_set unordered_set /// A unordered_set with the capacity defined at compile time. diff --git a/include/etl/variant_pool.h b/include/etl/variant_pool.h index 42592cb7..c60bd144 100644 --- a/include/etl/variant_pool.h +++ b/include/etl/variant_pool.h @@ -51,14 +51,14 @@ SOFTWARE. #ifndef ETL_VARIANT_POOL_INCLUDED #define ETL_VARIANT_POOL_INCLUDED -#include - #include "platform.h" #include "pool.h" #include "type_traits.h" #include "static_assert.h" #include "largest.h" +#include + namespace etl { //*************************************************************************** diff --git a/include/etl/vector.h b/include/etl/vector.h index dd23e44e..783df5df 100644 --- a/include/etl/vector.h +++ b/include/etl/vector.h @@ -33,10 +33,6 @@ SOFTWARE. #define ETL_IN_VECTOR_H -#include -#include -#include - #include "platform.h" #include "algorithm.h" #include "type_traits.h" @@ -54,6 +50,10 @@ SOFTWARE. #include "algorithm.h" #include "initializer_list.h" +#include +#include +#include + //***************************************************************************** ///\defgroup vector vector /// A vector with the capacity defined at compile time.