|
| btree_multiset (btree_multiset &&other) |
|
| btree_multiset (const btree_multiset &other) |
|
| btree_multiset (const Comparator &comp=Comparator(), const WeakComparator &weak_comp=WeakComparator()) |
| A default constructor creating an empty set. More...
|
|
template<typename Iter > |
| btree_multiset (const Iter &a, const Iter &b) |
| A constructor creating a set based on the given range. More...
|
|
btree_multiset & | operator= (const btree_multiset &other) |
|
iterator | begin () const |
|
| btree (btree &&other) |
|
| btree (const btree &set) |
|
| btree (const Iter &a, const Iter &b) |
|
| btree (detail::comparator< Key > comp=detail::comparator< Key >(), detail::comparator< Key > weak_comp=detail::comparator< Key >()) |
|
bool | check () |
| Checks the consistency of this tree. More...
|
|
void | clear () |
| Clears this tree. More...
|
|
bool | contains (const Key &k) const |
| Determines whether the given element is a member of this tree. More...
|
|
bool | contains (const Key &k, operation_hints &hints) const |
| Determines whether the given element is a member of this tree. More...
|
|
bool | empty () const |
|
iterator | end () const |
|
iterator | find (const Key &k) const |
| Locates the given key within this tree and returns an iterator referencing its position. More...
|
|
iterator | find (const Key &k, operation_hints &hints) const |
| Locates the given key within this tree and returns an iterator referencing its position. More...
|
|
std::vector< chunk > | getChunks (size_type num) const |
|
size_type | getDepth () const |
|
size_type | getMemoryUsage () const |
|
size_type | getNumNodes () const |
|
void | insert (const Iter &a, const Iter &b) |
| Inserts the given range of elements into this tree. More...
|
|
bool | insert (const Key &k) |
| Inserts the given key into this tree. More...
|
|
bool | insert (const Key &k, operation_hints &hints) |
| Inserts the given key into this tree. More...
|
|
iterator | lower_bound (const Key &k) const |
| Obtains a lower boundary for the given key – hence an iterator referencing the smallest value that is not less the given key. More...
|
|
iterator | lower_bound (const Key &k, operation_hints &hints) const |
| Obtains a lower boundary for the given key – hence an iterator referencing the smallest value that is not less the given key. More...
|
|
bool | operator!= (const btree &other) const |
|
btree & | operator= (const btree &other) |
|
bool | operator== (const btree &other) const |
|
std::vector< chunk > | partition (size_type num) const |
| Partitions the full range of this set into up to a given number of chunks. More...
|
|
void | printStats (std::ostream &out=std::cout) const |
| Prints a textual summary of statistical properties of this tree to the given output stream (for debugging and tuning). More...
|
|
void | printTree (std::ostream &out=std::cout) const |
|
size_type | size () const |
|
void | swap (btree &other) |
| Swaps the content of this tree with the given tree. More...
|
|
iterator | upper_bound (const Key &k) const |
| Obtains an upper boundary for the given key – hence an iterator referencing the first element that the given key is less than the referenced value. More...
|
|
iterator | upper_bound (const Key &k, operation_hints &hints) const |
| Obtains an upper boundary for the given key – hence an iterator referencing the first element that the given key is less than the referenced value. More...
|
|
| ~btree () |
|
template<typename Key, typename Comparator = detail::comparator<Key>, typename Allocator = std::allocator<Key>, unsigned blockSize = 256, typename SearchStrategy = typename souffle::detail::default_strategy<Key>::type, typename WeakComparator = Comparator, typename Updater = souffle::detail::updater<Key>>
class souffle::btree_multiset< Key, Comparator, Allocator, blockSize, SearchStrategy, WeakComparator, Updater >
A b-tree based multi-set implementation.
- Template Parameters
-
Key | .. the element type to be stored in this set |
Comparator | .. a class defining an order on the stored elements |
Allocator | .. utilized for allocating memory for required nodes |
blockSize | .. determines the number of bytes/block utilized by leaf nodes |
SearchStrategy | .. enables switching between linear, binary or any other search strategy |
Definition at line 2303 of file BTree.h.
template<typename Key , typename Comparator = detail::comparator<Key>, typename Allocator = std::allocator<Key>, unsigned blockSize = 256, typename SearchStrategy = typename souffle::detail::default_strategy<Key>::type, typename WeakComparator = Comparator, typename Updater = souffle::detail::updater<Key>>
using souffle::btree_multiset< Key, Comparator, Allocator, blockSize, SearchStrategy, WeakComparator, Updater >::super = souffle::detail::btree<Key, Comparator, Allocator, blockSize, SearchStrategy, false, WeakComparator, Updater> |
|
private |
template<typename Key , typename Comparator = detail::comparator<Key>, typename Allocator = std::allocator<Key>, unsigned blockSize = 256, typename SearchStrategy = typename souffle::detail::default_strategy<Key>::type, typename WeakComparator = Comparator, typename Updater = souffle::detail::updater<Key>>
template<typename Key , typename Comparator = detail::comparator<Key>, typename Allocator = std::allocator<Key>, unsigned blockSize = 256, typename SearchStrategy = typename souffle::detail::default_strategy<Key>::type, typename WeakComparator = Comparator, typename Updater = souffle::detail::updater<Key>>
template<typename Iter >
A constructor creating a set based on the given range.
Definition at line 2322 of file BTree.h.
2323 :
super(std::move(other)) {}
template<typename Key , typename Comparator = detail::comparator<Key>, typename Allocator = std::allocator<Key>, unsigned blockSize = 256, typename SearchStrategy = typename souffle::detail::default_strategy<Key>::type, typename WeakComparator = Comparator, typename Updater = souffle::detail::updater<Key>>
souffle::btree_multiset< Key, Comparator, Allocator, blockSize, SearchStrategy, WeakComparator, Updater >::btree_multiset |
( |
btree_multiset< Key, Comparator, Allocator, blockSize, SearchStrategy, WeakComparator, Updater > && |
other | ) |
|
|
inline |
template<typename Key , typename Comparator = detail::comparator<Key>, typename Allocator = std::allocator<Key>, unsigned blockSize = 256, typename SearchStrategy = typename souffle::detail::default_strategy<Key>::type, typename WeakComparator = Comparator, typename Updater = souffle::detail::updater<Key>>
template<typename s , typename n , typename l >
template<typename Key , typename Comparator = detail::comparator<Key>, typename Allocator = std::allocator<Key>, unsigned blockSize = 256, typename SearchStrategy = typename souffle::detail::default_strategy<Key>::type, typename WeakComparator = Comparator, typename Updater = souffle::detail::updater<Key>>
template<typename Iter >
template<typename Key , typename Comparator = detail::comparator<Key>, typename Allocator = std::allocator<Key>, unsigned blockSize = 256, typename SearchStrategy = typename souffle::detail::default_strategy<Key>::type, typename WeakComparator = Comparator, typename Updater = souffle::detail::updater<Key>>
btree_multiset& souffle::btree_multiset< Key, Comparator, Allocator, blockSize, SearchStrategy, WeakComparator, Updater >::operator= |
( |
const btree_multiset< Key, Comparator, Allocator, blockSize, SearchStrategy, WeakComparator, Updater > & |
other | ) |
|
|
inline |
Definition at line 2339 of file BTree.h.
2340 return super::template load<btree_multiset>(a,
b);
References b.
template<typename Key , typename Comparator = detail::comparator<Key>, typename Allocator = std::allocator<Key>, unsigned blockSize = 256, typename SearchStrategy = typename souffle::detail::default_strategy<Key>::type, typename WeakComparator = Comparator, typename Updater = souffle::detail::updater<Key>>