souffle
2.0.2-371-g6315b36
|
#include <Relation.h>
Public Member Functions | |
void | extend (const EqrelRelation &rel) |
Public Member Functions inherited from souffle::interpreter::Relation< 2, Eqrel > | |
void | __purge () |
Clear all indexes. More... | |
size_t | __size () const |
Return number of tuples in relation (full-order) More... | |
Iterator | begin () const override |
bool | contains (const RamDomain *data) const override |
bool | contains (const size_t &indexPos, const Tuple &low, const Tuple &high) const |
Tests whether this relation contains any element between the given boundaries. More... | |
bool | contains (const Tuple &tuple) const |
Tests whether this relation contains the given tuple. More... | |
IndexViewPtr | createView (const size_t &indexPos) const override |
Obtains a view on an index of this relation, facilitating hint-supported accesses. More... | |
bool | empty () const |
Check if the relation is empty. More... | |
Iterator | end () const override |
bool | exists (const Tuple &tuple) const |
Check if a tuple exists in relation. More... | |
Index * | getIndex (size_t idx) |
Order | getIndexOrder (size_t idx) const override |
Return the order of an index. More... | |
void | insert (const RamDomain *data) override |
void | insert (const Relation< Arity, Eqrel > &other) |
Add all entries of the given relation to this relation. More... | |
bool | insert (const Tuple &tuple) |
Add the given tuple to this relation. More... | |
std::vector< souffle::range< iterator > > | partitionRange (const size_t &indexPos, const Tuple &low, const Tuple &high, size_t partitionCount) const |
Returns a partitioned list of iterators coving elements in range [low, high]. More... | |
std::vector< souffle::range< iterator > > | partitionScan (size_t partitionCount) const |
Returns a partitioned list of iterators for parallel computation. More... | |
void | purge () override |
souffle::range< iterator > | range (const size_t &indexPos, const Tuple &low, const Tuple &high) const |
Obtains a pair of iterators covering the interval between the two given entries. More... | |
Relation (Relation &other)=delete | |
Relation (size_t auxiliaryArity, std::string name, const ram::analysis::MinIndexSelection &orderSet) | |
Creates a relation, build all necessary indexes. More... | |
souffle::range< iterator > | scan () const |
Obtains a pair of iterators to scan the entire relation. More... | |
size_t | size () const override |
void | swap (Relation< Arity, Eqrel > &other) |
Swaps the content of this and the given relation, including the installed indexes. More... | |
Public Member Functions inherited from souffle::interpreter::RelationWrapper | |
virtual Iterator | begin () const =0 |
virtual Iterator | end () const =0 |
arity_type | getArity () const |
arity_type | getAuxiliaryArity () const |
const std::string & | getName () const |
RelationWrapper (arity_type arity, arity_type auxiliaryArity, std::string relName) | |
virtual size_t | size () const =0 |
virtual | ~RelationWrapper ()=default |
Definition at line 409 of file Relation.h.
|
inline |
Definition at line 413 of file Relation.h.
Referenced by souffle::interpreter::Engine::execute().