A functor initializing an iterator upon creation to reference the first element exhibiting a given prefix within a given Trie.
More...
#include <Brie.h>
|
template<unsigned bits, typename iterator , typename entry_type > |
bool | operator() (const SparseBitMap< bits > &store, iterator &begin, iterator &end, const entry_type &entry) const |
|
template<typename Store , typename iterator , typename entry_type > |
bool | operator() (const Store &store, iterator &begin, iterator &end, const entry_type &entry) const |
|
template<unsigned Len, unsigned Pos, unsigned Dim>
struct souffle::detail::brie::fix_binding< Len, Pos, Dim >
A functor initializing an iterator upon creation to reference the first element exhibiting a given prefix within a given Trie.
Definition at line 2268 of file Brie.h.
◆ operator()() [1/2]
template<unsigned Len, unsigned Pos, unsigned Dim>
template<unsigned bits, typename iterator , typename entry_type >
Definition at line 2270 of file Brie.h.
2277 auto cur = store.find(entry[Pos]);
2280 if (cur == store.end())
return false;
2283 get_nested_iter_core<Pos>()(begin.iter_core).setIterator(cur);
2286 begin.value[Pos] = entry[Pos];
◆ operator()() [2/2]
template<unsigned Len, unsigned Pos, unsigned Dim>
template<typename Store , typename iterator , typename entry_type >
Definition at line 2291 of file Brie.h.
2294 if (cur != store.end()) {
2295 fix_first<Pos + 1, Dim>()(cur->second->getStore(), end);
2298 get_nested_iter_core<Pos>()(end.iter_core).setIterator(cur);
2305 template <
unsigned Pos,
unsigned Dim>
2306 struct fix_binding<0, Pos, Dim> {
2307 template <
unsigned bits,
typename iterator,
typename entry_type>
2308 bool operator()(
const SparseBitMap<bits>& store, iterator& begin, iterator& ,
2309 const entry_type& )
const {
2311 auto a = store.begin();
2312 get_nested_iter_core<Pos>()(begin.iter_core).setIterator(a);
2313 begin.value[Pos] = *a;
2318 template <
typename Store,
typename iterator,
typename entry_type>
The documentation for this struct was generated from the following file:
- include/souffle/datastructure/Brie.h