Fcitx
Public Types | Public Member Functions | List of all members
fcitx::Flags< Enum > Class Template Reference

Class provides bit flag support for Enum. More...

#include <fcitx-utils/flags.h>

Public Types

using storage_type = typename std::underlying_type_t< Enum >
 

Public Member Functions

constexpr Flags (Enum f)
 
 Flags (storage_type i=0)
 
constexpr Flags (const std::initializer_list< Enum > &l)
 
constexpr operator storage_type () const
 
constexpr storage_type toInteger () const
 
Flagsoperator= (Enum f)
 
Flagsoperator= (storage_type f)
 
constexpr bool operator! () const
 
constexpr Flagsoperator &= (Flags flag)
 
Flagsoperator &= (Enum flag)
 
Flagsoperator|= (Flags flag)
 
constexpr Flagsoperator|= (Enum flag)
 
Flagsoperator^= (Flags flag)
 
Flagsoperator^= (Enum flag)
 
constexpr Flags operator| (Flags f) const
 
constexpr Flags operator| (Enum f) const
 
constexpr Flags operator^ (Flags f) const
 
constexpr Flags operator^ (Enum f) const
 
constexpr Flags operator & (Flags f) const
 
constexpr Flags operator & (Enum f) const
 
constexpr Flags operator~ () const
 
constexpr Flags unset (Enum f) const
 
constexpr Flags unset (Flags f) const
 
template<typename T >
constexpr bool test (T f) const
 
template<typename T >
constexpr bool testAny (T f) const
 
constexpr bool operator== (const Flags &f) const
 
constexpr bool operator== (Enum f) const
 
constexpr bool operator!= (const Flags &f) const
 
constexpr bool operator!= (Enum f) const
 

Detailed Description

template<typename Enum>
class fcitx::Flags< Enum >

Class provides bit flag support for Enum.

Definition at line 33 of file flags.h.


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