
Namespaces | |
| namespace | cetl |
| namespace | cetl::pmr |
Macros | |
| #define | CETL_H_ERASE |
| #define | CETL_VERSION_PATCH 0 |
| #define | CETL_VERSION_MINOR 4 |
| #define | CETL_VERSION_MAJOR 1 |
| #define | CETL_DEBUG_ASSERT(c, m) |
| #define | CETL_CPP_STANDARD_14 201402L |
| #define | CETL_CPP_STANDARD_17 201703L |
| #define | CETL_CPP_STANDARD_20 202002L |
| #define | CETL_NODISCARD [[nodiscard]] |
CETL common header.
| #define CETL_DEBUG_ASSERT | ( | c, | |
| m ) |
When CETL_ENABLE_DEBUG_ASSERT is defined and not 0 then this is redirected to assert as included from <cassert>.
Because assert does not support a failure message we embed the m argument in a comma operator statement such that the compiler places the both the text and the failure clause c in the text section of the binary which is normally shown from standard error when an assert occurs.
When CETL_ENABLE_DEBUG_ASSERT is not defined or is 0 then these statements have no effect and should not effect the resulting binary.
CETL_ENABLE_DEBUG_ASSERT as 1 to enable assertions within CETL code. Enabling this in production code is strongly discouraged. Referenced by cetl::pf20::span< T, Extent >::back(), cetl::pf20::span< T, Extent >::first(), cetl::pf20::span< T, Extent >::front(), cetl::VariableLengthArray< T, Allocator >::front(), cetl::VariableLengthArray< T, Allocator >::front(), cetl::VariableLengthArray< bool, Allocator >::front(), cetl::VariableLengthArray< bool, Allocator >::front(), cetl::pmr::function< Result(Args...), Footprint, Pmr >::function(), cetl::pf20::span< T, Extent >::last(), cetl::pmr::function< Result(Args...), Footprint, Pmr >::operator bool(), cetl::pmr::function< Result(Args...), Footprint, Pmr >::operator()(), cetl::pmr::MemoryResourceDeleter< MemoryResourceType >::operator()(), cetl::pmr::PmrInterfaceDeleter< Interface >::operator()(), cetl::pf20::span< T, Extent >::operator[](), cetl::pf17::pmr::polymorphic_allocator< T >::polymorphic_allocator(), cetl::pf20::span< T, Extent >::span(), cetl::pf20::span< T, Extent >::span(), cetl::pf20::span< T, Extent >::span(), and cetl::pf20::span< T, Extent >::subspan().
| #define CETL_H_ERASE |
If CETL_H_ERASE is defined then all CETL types will exclude all cetl headers which removes all common dependencies, other than C++ standard headers, from CETL.
The types will not build due to missing macros and/or type aliases but the user can re-define these based on subsequent compiler errors. This allows elision of cetl.hpp and dependencies on CETL polyfill types without modifying CETL source code. Note that CETL polyfill headers cannot be used if CETL_H_ERASE is defined.
| #define CETL_NODISCARD [[nodiscard]] |
CETL_NODISCARD.
A compatibility macros that expands to [[nodiscard]] if C++17 or later is used, otherwise it expands to a compiler-specific alternative if one is known, otherwise it expands to nothing.
Referenced by cetl::rtti::_cast_(), cetl::rtti::_cast_(), cetl::rtti_helper< TypeIDType, Bases >::_cast_(), cetl::rtti_helper< TypeIDType, Bases >::_cast_(), cetl::get(), cetl::get(), cetl::get(), cetl::pf17::get(), cetl::pf17::get(), cetl::pf17::get(), cetl::pf17::get(), cetl::pf17::get_if(), cetl::pf17::get_if(), cetl::unbounded_variant< Footprint, true, true, alignof(std::max_align_t), Pmr >::get_if, cetl::unbounded_variant< Footprint, true, true, alignof(std::max_align_t), Pmr >::get_if, cetl::pmr::function< Result(Args...), Footprint, Pmr >::get_memory_resource(), cetl::unbounded_variant< Footprint, true, true, alignof(std::max_align_t), Pmr >::get_memory_resource(), cetl::pf17::optional< T >::has_value(), cetl::pf17::holds_alternative(), cetl::pf17::variant< Ts >::index(), cetl::is_instance_of(), cetl::is_instance_of(), cetl::make_unbounded_variant(), cetl::make_unbounded_variant(), cetl::make_unbounded_variant(), cetl::make_unbounded_variant(), cetl::pf17::optional< T >::value(), cetl::pf17::optional< T >::value_or(), cetl::pf17::variant< Ts >::valueless_by_exception(), and cetl::pmr::function< Result(Args...), Footprint, Pmr >::valueless_by_exception().