MimIR 0.1
MimIR is my Intermediate Representation
|
Maintains PooledSets within a fe::Arena
and unifies them in a absl::flat_hash_set
.
More...
#include <mim/util/pool.h>
Public Member Functions | |
Construction & Destruction | |
Pool & | operator= (const Pool &)=delete |
Pool ()=default | |
Pool (const Pool &)=delete | |
Pool (Pool &&other) | |
Set Operations | |
| |
PooledSet< T > | create (T elem) |
Create a PooledSet wih a single element : ![]() | |
template<class I > | |
PooledSet< T > | create (I begin, I end) |
Create a PooledSet wih all elements in the given range. | |
PooledSet< T > | merge (PooledSet< T > a, PooledSet< T > b) |
Yields ![]() | |
PooledSet< T > | intersect (PooledSet< T > a, PooledSet< T > b) |
Yields ![]() | |
PooledSet< T > | insert (PooledSet< T > a, const T &elem) |
Yields ![]() | |
PooledSet< T > | erase (PooledSet< T > a, const T &elem) |
Yields ![]() | |
Friends | |
void | swap (Pool &p1, Pool &p2) noexcept |
Maintains PooledSets within a fe::Arena
and unifies them in a absl::flat_hash_set
.
|
default |
Definition at line 135 of file pool.h.
References mim::Pool< T >::swap.
Create a PooledSet wih a single element
:
Definition at line 146 of file pool.h.
Referenced by mim::Pool< T >::insert().
|
inlinenodiscard |
Yields
Definition at line 219 of file pool.h.
References mim::Pool< T >::create(), and mim::Pool< T >::merge().
|
inlinenodiscard |
Yields
Definition at line 197 of file pool.h.
References mim::PooledSet< T >::begin(), mim::PooledSet< T >::end(), and mim::PooledSet< T >::size().
|
inlinenodiscard |
Yields
Definition at line 169 of file pool.h.
References mim::PooledSet< T >::begin(), mim::PooledSet< T >::end(), and mim::PooledSet< T >::size().
Referenced by mim::Pool< T >::insert().
Definition at line 236 of file pool.h.
Referenced by mim::Pool< T >::Pool().