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: