![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <zone-compact-set.h>
Classes | |
class | const_iterator |
Public Member Functions | |
ZoneCompactSet () | |
ZoneCompactSet (T handle) | |
ZoneCompactSet (std::initializer_list< T > handles, Zone *zone) | |
ZoneCompactSet (const ZoneCompactSet &other) V8_NOEXCEPT=default | |
ZoneCompactSet & | operator= (const ZoneCompactSet &other) V8_NOEXCEPT=default |
ZoneCompactSet (ZoneCompactSet &&other) V8_NOEXCEPT=default | |
ZoneCompactSet & | operator= (ZoneCompactSet &&other) V8_NOEXCEPT=default |
template<class It , typename = typename std::iterator_traits<It>::iterator_category> | |
ZoneCompactSet (It first, It last, Zone *zone) | |
ZoneCompactSet< T > | Clone (Zone *zone) const |
bool | is_empty () const |
size_t | size () const |
T | at (size_t i) const |
T | operator[] (size_t i) const |
void | insert (T handle, Zone *zone) |
void | Union (ZoneCompactSet< T > const &other, Zone *zone) |
bool | contains (ZoneCompactSet< T > const &other) const |
bool | contains (T handle) const |
void | remove (T handle, Zone *zone) |
void | clear () |
const_iterator | begin () const |
const_iterator | end () const |
Private Types | |
enum | Tag { kSingletonTag = 0 , kEmptyTag = 1 , kListTag = 2 } |
using | Traits = ZoneCompactSetTraits<T> |
using | handle_type = typename Traits::handle_type |
using | data_type = typename Traits::data_type |
using | List = base::Vector<data_type*> |
using | PointerWithPayload = base::PointerWithPayload<void, Tag, 2> |
Private Member Functions | |
bool | is_singleton () const |
bool | is_list () const |
List const * | list () const |
data_type * | singleton () const |
List * | NewList (size_t size, Zone *zone) |
Static Private Member Functions | |
static PointerWithPayload | EmptyValue () |
Private Attributes | |
PointerWithPayload | data_ |
Friends | |
bool | operator== (ZoneCompactSet< T > const &lhs, ZoneCompactSet< T > const &rhs) |
bool | operator!= (ZoneCompactSet< T > const &lhs, ZoneCompactSet< T > const &rhs) |
uintptr_t | hash_value (ZoneCompactSet< T > const &set) |
Definition at line 52 of file zone-compact-set.h.
|
private |
Definition at line 58 of file zone-compact-set.h.
|
private |
Definition at line 57 of file zone-compact-set.h.
|
private |
Definition at line 275 of file zone-compact-set.h.
|
private |
Definition at line 276 of file zone-compact-set.h.
|
private |
Definition at line 56 of file zone-compact-set.h.
|
private |
Enumerator | |
---|---|
kSingletonTag | |
kEmptyTag | |
kListTag |
Definition at line 273 of file zone-compact-set.h.
|
inline |
Definition at line 61 of file zone-compact-set.h.
|
inlineexplicit |
Definition at line 62 of file zone-compact-set.h.
|
inlineexplicit |
Definition at line 64 of file zone-compact-set.h.
|
default |
|
default |
|
inlineexplicit |
|
inline |
Definition at line 105 of file zone-compact-set.h.
|
inline |
|
inline |
Definition at line 245 of file zone-compact-set.h.
|
inline |
|
inline |
|
inline |
Definition at line 163 of file zone-compact-set.h.
|
inlinestaticprivate |
|
inline |
|
inline |
Definition at line 116 of file zone-compact-set.h.
|
inline |
Definition at line 97 of file zone-compact-set.h.
|
inlineprivate |
Definition at line 279 of file zone-compact-set.h.
|
inlineprivate |
Definition at line 278 of file zone-compact-set.h.
|
inlineprivate |
Definition at line 281 of file zone-compact-set.h.
|
inlineprivate |
Definition at line 291 of file zone-compact-set.h.
|
default |
|
default |
|
inline |
|
inline |
Definition at line 201 of file zone-compact-set.h.
|
inlineprivate |
Definition at line 286 of file zone-compact-set.h.
|
inline |
Definition at line 99 of file zone-compact-set.h.
|
inline |
Definition at line 157 of file zone-compact-set.h.
|
friend |
Definition at line 264 of file zone-compact-set.h.
|
friend |
Definition at line 259 of file zone-compact-set.h.
|
friend |
Definition at line 247 of file zone-compact-set.h.
|
private |
Definition at line 302 of file zone-compact-set.h.