TPIE

11a2c2d
tpie::flags< T > Class Template Reference

Type safe bitflags over an enumeration T. More...

#include <tpie/flags.h>

Public Member Functions

 flags (T t)
 
flagsoperator|= (const T &r)
 
flagsoperator|= (const flags &r)
 
 operator bool_type () const
 
flags operator~ () const
 

Friends

flags operator| (const flags &l, const T &r)
 
flags operator| (const flags &l, const flags &r)
 
flags operator| (const T &l, const flags &r)
 
flags operator& (const flags &l, const flags &r)
 
flags operator& (const T &l, const flags &r)
 
flags operator& (const flags &l, const T &r)
 
template<typename D >
void serialize (D &dst, const flags< T > &f)
 
template<typename S >
void unserialize (S &src, flags< T > &f)
 

Detailed Description

template<typename T>
class tpie::flags< T >

Type safe bitflags over an enumeration T.

Example:

enum OPTION {a=1, b=2, c=4};
TPIE_DECLARE_OPERATORS_FOR_FLAGS(OPTION)
typedef tpie::flags<OPTION> OPTIONS;
void foo(OPTIONS o) {
if (o & a) do_something();
}
void bar() {
foo(a | c);
}

Definition at line 73 of file flags.h.


The documentation for this class was generated from the following file:
tpie::flags
Type safe bitflags over an enumeration T.
Definition: flags.h:73