This header file is part of module ALib Enums of the ALib C++ Library .
© 2013-2024 A-Worx GmbH, Germany. Published under Boost Software License.
Definition in file iterable.hpp.
#include "alib/enums/bitwise.hpp"
#include "alib/enums/underlyingintegral.hpp"
#include <cstdint>
#include <iterator>
Go to the source code of this file.
Classes | |
struct | EnumIterator< TEnum, TEnableIf > |
struct | T_EnumIsIterable< TEnum, TEnableIf > |
class | EnumIterator< TEnum, TEnableIf >::TRandomAccessIterator< TPointer, TReference > |
Namespaces | |
namespace | alib |
namespace | alib::enums |
namespace | alib::enums::iterable |
Macros | |
ALib Module Enums | |
The macros in this section are introduced by module ALib Enums and allow to specialize type-traits structs T_EnumRecords , T_EnumIsArithmetical , T_EnumIsBitwise and T_EnumIsIterable for scoped or non-scoped enum types.
| |
#define | ALIB_ENUMS_MAKE_ITERABLE(TEnum, StopElement) ALIB_ENUMS_MAKE_ITERABLE_BEGIN_END( TEnum, TEnum(0), StopElement ) |
#define | ALIB_ENUMS_MAKE_ITERABLE_BEGIN_END(TEnum, StartElement, StopElement) |
Typedefs | |
template<typename TEnum , typename TEnableIf = void> | |
using | EnumIterator = enums::EnumIterator<TEnum, TEnableIf> |
Type alias in namespace alib. | |
Functions | |
template<typename TEnum > | |
constexpr TEnum | operator+ (TEnum element, int addend) noexcept(true) |
template<typename TEnum > | |
constexpr TEnum | operator- (TEnum element, int subtrahend) noexcept(true) |