v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::base::EnumSet< E, T > Class Template Reference

#include <enum-set.h>

Collaboration diagram for v8::base::EnumSet< E, T >:

Public Types

using StorageType = T
 

Public Member Functions

constexpr EnumSet ()=default
 
constexpr EnumSet (std::initializer_list< E > init)
 
constexpr bool empty () const
 
constexpr bool contains (E element) const
 
constexpr bool contains_all (EnumSet set) const
 
constexpr bool contains_any (EnumSet set) const
 
constexpr bool contains_only (E element) const
 
constexpr bool is_subset_of (EnumSet set) const
 
constexpr void Add (E element)
 
constexpr void Add (EnumSet set)
 
constexpr void Remove (E element)
 
constexpr void Remove (EnumSet set)
 
constexpr void RemoveAll ()
 
constexpr void Intersect (EnumSet set)
 
constexpr T ToIntegral () const
 
constexpr EnumSet operator~ () const
 
constexpr bool operator== (EnumSet set) const
 
constexpr bool operator!= (EnumSet set) const
 
constexpr EnumSet operator| (EnumSet set) const
 
constexpr EnumSet operator& (EnumSet set) const
 
constexpr EnumSet operator- (EnumSet set) const
 
EnumSetoperator|= (EnumSet set)
 
EnumSetoperator&= (EnumSet set)
 
EnumSetoperator-= (EnumSet set)
 
constexpr EnumSet operator| (E element) const
 
constexpr EnumSet operator& (E element) const
 
constexpr EnumSet operator- (E element) const
 
EnumSetoperator|= (E element)
 
EnumSetoperator&= (E element)
 
EnumSetoperator-= (E element)
 

Static Public Member Functions

static constexpr EnumSet FromIntegral (T bits)
 

Private Member Functions

constexpr EnumSet (T bits)
 

Static Private Member Functions

static constexpr T Mask (E element)
 

Private Attributes

T bits_ = 0
 

Detailed Description

template<class E, class T = int>
class v8::base::EnumSet< E, T >

Definition at line 20 of file enum-set.h.

Member Typedef Documentation

◆ StorageType

template<class E , class T = int>
using v8::base::EnumSet< E, T >::StorageType = T

Definition at line 24 of file enum-set.h.

Constructor & Destructor Documentation

◆ EnumSet() [1/3]

template<class E , class T = int>
v8::base::EnumSet< E, T >::EnumSet ( )
constexprdefault
Here is the caller graph for this function:

◆ EnumSet() [2/3]

template<class E , class T = int>
v8::base::EnumSet< E, T >::EnumSet ( std::initializer_list< E > init)
inlineconstexpr

Definition at line 28 of file enum-set.h.

Here is the call graph for this function:

◆ EnumSet() [3/3]

template<class E , class T = int>
v8::base::EnumSet< E, T >::EnumSet ( T bits)
inlineexplicitconstexprprivate

Definition at line 94 of file enum-set.h.

Member Function Documentation

◆ Add() [1/2]

template<class E , class T = int>
void v8::base::EnumSet< E, T >::Add ( E element)
inlineconstexpr

Definition at line 50 of file enum-set.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Add() [2/2]

template<class E , class T = int>
void v8::base::EnumSet< E, T >::Add ( EnumSet< E, T > set)
inlineconstexpr

Definition at line 51 of file enum-set.h.

◆ contains()

template<class E , class T = int>
bool v8::base::EnumSet< E, T >::contains ( E element) const
inlineconstexpr

Definition at line 35 of file enum-set.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ contains_all()

template<class E , class T = int>
bool v8::base::EnumSet< E, T >::contains_all ( EnumSet< E, T > set) const
inlineconstexpr

Definition at line 38 of file enum-set.h.

Here is the caller graph for this function:

◆ contains_any()

template<class E , class T = int>
bool v8::base::EnumSet< E, T >::contains_any ( EnumSet< E, T > set) const
inlineconstexpr

Definition at line 41 of file enum-set.h.

Here is the caller graph for this function:

◆ contains_only()

template<class E , class T = int>
bool v8::base::EnumSet< E, T >::contains_only ( E element) const
inlineconstexpr

Definition at line 44 of file enum-set.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ empty()

template<class E , class T = int>
bool v8::base::EnumSet< E, T >::empty ( ) const
inlineconstexpr

Definition at line 34 of file enum-set.h.

Here is the caller graph for this function:

◆ FromIntegral()

template<class E , class T = int>
static constexpr EnumSet v8::base::EnumSet< E, T >::FromIntegral ( T bits)
inlinestaticconstexpr

Definition at line 91 of file enum-set.h.

◆ Intersect()

template<class E , class T = int>
void v8::base::EnumSet< E, T >::Intersect ( EnumSet< E, T > set)
inlineconstexpr

Definition at line 55 of file enum-set.h.

◆ is_subset_of()

template<class E , class T = int>
bool v8::base::EnumSet< E, T >::is_subset_of ( EnumSet< E, T > set) const
inlineconstexpr

Definition at line 47 of file enum-set.h.

Here is the caller graph for this function:

◆ Mask()

template<class E , class T = int>
static constexpr T v8::base::EnumSet< E, T >::Mask ( E element)
inlinestaticconstexprprivate

Definition at line 96 of file enum-set.h.

Here is the caller graph for this function:

◆ operator!=()

template<class E , class T = int>
bool v8::base::EnumSet< E, T >::operator!= ( EnumSet< E, T > set) const
inlineconstexpr

Definition at line 61 of file enum-set.h.

◆ operator&() [1/2]

template<class E , class T = int>
EnumSet v8::base::EnumSet< E, T >::operator& ( E element) const
inlineconstexpr

Definition at line 80 of file enum-set.h.

Here is the call graph for this function:

◆ operator&() [2/2]

template<class E , class T = int>
EnumSet v8::base::EnumSet< E, T >::operator& ( EnumSet< E, T > set) const
inlineconstexpr

Definition at line 66 of file enum-set.h.

Here is the call graph for this function:

◆ operator&=() [1/2]

template<class E , class T = int>
EnumSet & v8::base::EnumSet< E, T >::operator&= ( E element)
inline

Definition at line 88 of file enum-set.h.

◆ operator&=() [2/2]

template<class E , class T = int>
EnumSet & v8::base::EnumSet< E, T >::operator&= ( EnumSet< E, T > set)
inline

Definition at line 74 of file enum-set.h.

◆ operator-() [1/2]

template<class E , class T = int>
EnumSet v8::base::EnumSet< E, T >::operator- ( E element) const
inlineconstexpr

Definition at line 83 of file enum-set.h.

Here is the call graph for this function:

◆ operator-() [2/2]

template<class E , class T = int>
EnumSet v8::base::EnumSet< E, T >::operator- ( EnumSet< E, T > set) const
inlineconstexpr

Definition at line 69 of file enum-set.h.

Here is the call graph for this function:

◆ operator-=() [1/2]

template<class E , class T = int>
EnumSet & v8::base::EnumSet< E, T >::operator-= ( E element)
inline

Definition at line 89 of file enum-set.h.

◆ operator-=() [2/2]

template<class E , class T = int>
EnumSet & v8::base::EnumSet< E, T >::operator-= ( EnumSet< E, T > set)
inline

Definition at line 75 of file enum-set.h.

◆ operator==()

template<class E , class T = int>
bool v8::base::EnumSet< E, T >::operator== ( EnumSet< E, T > set) const
inlineconstexpr

Definition at line 60 of file enum-set.h.

◆ operator|() [1/2]

template<class E , class T = int>
EnumSet v8::base::EnumSet< E, T >::operator| ( E element) const
inlineconstexpr

Definition at line 77 of file enum-set.h.

Here is the call graph for this function:

◆ operator|() [2/2]

template<class E , class T = int>
EnumSet v8::base::EnumSet< E, T >::operator| ( EnumSet< E, T > set) const
inlineconstexpr

Definition at line 63 of file enum-set.h.

Here is the call graph for this function:

◆ operator|=() [1/2]

template<class E , class T = int>
EnumSet & v8::base::EnumSet< E, T >::operator|= ( E element)
inline

Definition at line 87 of file enum-set.h.

◆ operator|=() [2/2]

template<class E , class T = int>
EnumSet & v8::base::EnumSet< E, T >::operator|= ( EnumSet< E, T > set)
inline

Definition at line 73 of file enum-set.h.

◆ operator~()

template<class E , class T = int>
EnumSet v8::base::EnumSet< E, T >::operator~ ( ) const
inlineconstexpr

Definition at line 58 of file enum-set.h.

Here is the call graph for this function:

◆ Remove() [1/2]

template<class E , class T = int>
void v8::base::EnumSet< E, T >::Remove ( E element)
inlineconstexpr

Definition at line 52 of file enum-set.h.

◆ Remove() [2/2]

template<class E , class T = int>
void v8::base::EnumSet< E, T >::Remove ( EnumSet< E, T > set)
inlineconstexpr

Definition at line 53 of file enum-set.h.

◆ RemoveAll()

template<class E , class T = int>
void v8::base::EnumSet< E, T >::RemoveAll ( )
inlineconstexpr

Definition at line 54 of file enum-set.h.

Here is the caller graph for this function:

◆ ToIntegral()

template<class E , class T = int>
T v8::base::EnumSet< E, T >::ToIntegral ( ) const
inlineconstexpr

Definition at line 56 of file enum-set.h.

Here is the caller graph for this function:

Member Data Documentation

◆ bits_

template<class E , class T = int>
T v8::base::EnumSet< E, T >::bits_ = 0
private

Definition at line 101 of file enum-set.h.


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