spot 2.12.2
|
Classes | |
struct | uf_element |
Represents a Union-Find element. More... | |
struct | uf_element_hasher |
The hasher for the previous uf_element. Shortcut to ease shared map manipulation. More... | |
Public Types | |
enum class | uf_status { LIVE , LOCK , DEAD } |
enum class | list_status { BUSY , LOCK , DONE } |
enum class | claim_status { CLAIM_FOUND , CLAIM_NEW , CLAIM_DEAD } |
using | shared_map = brick::hashset::FastConcurrent< uf_element *, uf_element_hasher > |
Public Member Functions | |
iterable_uf (const iterable_uf< State, StateHash, StateEqual > &uf) | |
iterable_uf (shared_map &map, unsigned tid) | |
std::pair< claim_status, uf_element * > | make_claim (State a) |
uf_element * | find (uf_element *a) |
bool | sameset (uf_element *a, uf_element *b) |
bool | lock_root (uf_element *a) |
void | unlock_root (uf_element *a) |
uf_element * | lock_list (uf_element *a) |
void | unlock_list (uf_element *a) |
void | unite (uf_element *a, uf_element *b) |
uf_element * | pick_from_list (uf_element *u, bool *sccfound) |
void | remove_from_list (uf_element *a) |
unsigned | inserted () |