Embedded Template Library 1.0
Loading...
Searching...
No Matches
etl::flags< T, MASK > Class Template Reference

#include <flags.h>

Public Types

typedef T value_type

Public Member Functions

 ETL_STATIC_ASSERT (etl::is_integral< T >::value &&etl::is_unsigned< T >::value, "Unsigned integral values only")
ETL_CONSTEXPR flags () ETL_NOEXCEPT
 Constructor.
ETL_CONSTEXPR flags (value_type pattern) ETL_NOEXCEPT
ETL_CONSTEXPR flags (const flags< T, MASK > &pattern) ETL_NOEXCEPT
template<value_type pattern>
ETL_CONSTEXPR bool test () const ETL_NOEXCEPT
 Tests bits.
ETL_CONSTEXPR bool test (value_type pattern) const ETL_NOEXCEPT
template<value_type pattern, bool value>
ETL_CONSTEXPR14 flags< T, MASK > & set () ETL_NOEXCEPT
 Set the bits.
template<value_type pattern>
ETL_CONSTEXPR14 flags< T, MASK > & set (bool value) ETL_NOEXCEPT
template<value_type pattern>
ETL_CONSTEXPR14 flags< T, MASK > & set () ETL_NOEXCEPT
ETL_CONSTEXPR14 flags< T, MASK > & set (value_type pattern) ETL_NOEXCEPT
ETL_CONSTEXPR14 flags< T, MASK > & set (value_type pattern, bool value) ETL_NOEXCEPT
ETL_CONSTEXPR14 flags< T, MASK > & clear () ETL_NOEXCEPT
 Clear all of the flags.
template<value_type pattern>
ETL_CONSTEXPR14 flags< T, MASK > & reset () ETL_NOEXCEPT
 Reset the bit at the pattern.
ETL_CONSTEXPR14 flags< T, MASK > & reset (value_type pattern) ETL_NOEXCEPT
ETL_CONSTEXPR14 flags< T, MASK > & flip () ETL_NOEXCEPT
 Flip bits.
template<value_type pattern>
ETL_CONSTEXPR14 flags< T, MASK > & flip () ETL_NOEXCEPT
ETL_CONSTEXPR14 flags< T, MASK > & flip (value_type pattern) ETL_NOEXCEPT
ETL_CONSTEXPR bool all () const ETL_NOEXCEPT
template<value_type pattern>
ETL_CONSTEXPR bool all_of () const ETL_NOEXCEPT
ETL_CONSTEXPR bool all_of (value_type pattern) const ETL_NOEXCEPT
ETL_CONSTEXPR bool none () const ETL_NOEXCEPT
 Are none of the bits set?
template<value_type pattern>
ETL_CONSTEXPR bool none_of () const ETL_NOEXCEPT
ETL_CONSTEXPR bool none_of (value_type pattern) const ETL_NOEXCEPT
ETL_CONSTEXPR bool any () const ETL_NOEXCEPT
 Are any of the bits set?
template<value_type pattern>
ETL_CONSTEXPR bool any_of () const ETL_NOEXCEPT
ETL_CONSTEXPR bool any_of (value_type pattern) const
ETL_CONSTEXPR value_type value () const ETL_NOEXCEPT
 Return the value of the flags.
ETL_CONSTEXPR14 flags< T, MASK > & value (value_type pattern) ETL_NOEXCEPT
 Set the value of the flags.
ETL_CONSTEXPR operator value_type () const ETL_NOEXCEPT
 Return the value of the flags.
ETL_CONSTEXPR14 flags< T, MASK > & operator&= (value_type pattern) ETL_NOEXCEPT
 operator &=
ETL_CONSTEXPR14 flags< T, MASK > & operator|= (value_type pattern) ETL_NOEXCEPT
 operator |=
ETL_CONSTEXPR14 flags< T, MASK > & operator^= (value_type pattern) ETL_NOEXCEPT
 operator ^=
ETL_CONSTEXPR14 flags< T, MASK > & operator= (flags< T, MASK > other) ETL_NOEXCEPT
 operator =
ETL_CONSTEXPR14 flags< T, MASK > & operator= (value_type pattern) ETL_NOEXCEPT
 operator =
void swap (flags< T, MASK > &other) ETL_NOEXCEPT
 swap

Static Public Attributes

static ETL_CONSTANT value_type ALL_SET = etl::integral_limits<value_type>::max & MASK
static ETL_CONSTANT value_type ALL_CLEAR = 0
static ETL_CONSTANT size_t NBITS = etl::integral_limits<value_type>::bits

Detailed Description

template<typename T, T MASK = etl::integral_limits<T>::max>
class etl::flags< T, MASK >

flags Flags based around an integral value.


The documentation for this class was generated from the following file: