| souffle
    2.0.2-371-g6315b36
    | 
#include <UnionFind.h>

| Public Member Functions | |
| void | clear () | 
| Remove all elements from this disjoint set.  More... | |
| bool | contains (SparseDomain v1, SparseDomain v2) | 
| SparseDomain | findNode (SparseDomain x) | 
| void | makeNode (SparseDomain val) | 
| bool | nodeExists (const SparseDomain val) const | 
| SparseDisjointSet & | operator= (SparseDisjointSet &&other)=delete | 
| SparseDisjointSet & | operator= (SparseDisjointSet &other)=delete | 
| bool | sameSet (SparseDomain x, SparseDomain y) | 
| std::size_t | size () | 
| SparseDisjointSet ()=default | |
| SparseDisjointSet (SparseDisjointSet &&other)=delete | |
| SparseDisjointSet (SparseDisjointSet &other)=delete | |
| parent_t | toDense (const SparseDomain in) | 
| Retrieve dense encoding, adding it in if non-existent.  More... | |
| const SparseDomain | toSparse (const parent_t in) const | 
| For the given dense value, return the associated sparse value Undefined behaviour if dense value not in set.  More... | |
| void | unionNodes (SparseDomain x, SparseDomain y) | 
| Private Types | |
| using | DenseMap = RandomInsertPiggyList< SparseDomain > | 
| using | PairStore = std::pair< SparseDomain, parent_t > | 
| using | SparseMap = LambdaBTreeSet< PairStore, std::function< parent_t(PairStore &)>, EqrelMapComparator< PairStore > > | 
| Private Attributes | |
| DenseMap | denseToSparseMap | 
| DisjointSet | ds | 
| SparseMap::operation_hints | last_ins | 
| SparseMap | sparseToDenseMap | 
| Friends | |
| template<typename TupleType > | |
| class | EquivalenceRelation | 
Definition at line 258 of file UnionFind.h.
| 
 | private | 
Definition at line 267 of file UnionFind.h.
| 
 | private | 
Definition at line 264 of file UnionFind.h.
| 
 | private | 
Definition at line 266 of file UnionFind.h.
| 
 | default | 
| 
 | delete | 
| 
 | delete | 
| 
 | inline | 
Remove all elements from this disjoint set.
Definition at line 338 of file UnionFind.h.
| 
 | inline | 
Definition at line 355 of file UnionFind.h.
| 
 | inline | 
Definition at line 323 of file UnionFind.h.
Referenced by souffle::EquivalenceRelation< Arity >::anteriorIt(), souffle::EquivalenceRelation< Arity >::antpostit(), and souffle::EquivalenceRelation< Arity >::upper_bound().
| 
 | inline | 
Definition at line 345 of file UnionFind.h.
Referenced by souffle::test::TEST().
| 
 | inline | 
Definition at line 351 of file UnionFind.h.
Referenced by souffle::EquivalenceRelation< Arity >::getBoundaries().
| 
 | delete | 
| 
 | delete | 
| 
 | inline | 
Definition at line 319 of file UnionFind.h.
Referenced by souffle::EquivalenceRelation< Arity >::anteriorIt().
| 
 | inline | 
Definition at line 331 of file UnionFind.h.
| 
 | inline | 
Retrieve dense encoding, adding it in if non-existent.
| in | the sparse value | 
Definition at line 281 of file UnionFind.h.
Referenced by souffle::SparseDisjointSet< value_type >::clear().
| 
 | inline | 
For the given dense value, return the associated sparse value Undefined behaviour if dense value not in set.
| in | the supplied dense value | 
Definition at line 314 of file UnionFind.h.
| 
 | inline | 
Definition at line 327 of file UnionFind.h.
Referenced by souffle::EquivalenceRelation< Arity >::insert().
| 
 | friend | 
Definition at line 262 of file UnionFind.h.
| 
 | private | 
Definition at line 273 of file UnionFind.h.
Referenced by souffle::SparseDisjointSet< value_type >::size().
| 
 | private | 
Definition at line 259 of file UnionFind.h.
Referenced by souffle::EqrelMapComparator< PairStore >::equal(), and souffle::SparseDisjointSet< value_type >::size().
| 
 | private | 
Definition at line 269 of file UnionFind.h.
| 
 | private | 
Definition at line 271 of file UnionFind.h.
Referenced by souffle::SparseDisjointSet< value_type >::makeNode(), and souffle::SparseDisjointSet< value_type >::size().
 1.8.17
 1.8.17