BAM
Abstract Machine for Bottom-Up Evaluation with the Push Method
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
rel_c Class Reference
Inheritance diagram for rel_c:
list_c< T > list_c< row_1_c > list_c< row_2_c > rel_n_n_c set_c< T > set_c< row_1_c > set_c< row_2_c > set_e_c< T > set_e_c< row_1_c > set_e_c< row_2_c > set_s_c< T > set_s_c< row_1_c > set_s_c< row_2_c > set_tt_c

Public Member Functions

str_t name () const
 
bool mem_err () const
 
int num_rows () const
 
int num_cols () const
 
int bound_args ()
 
int free_args ()
 
str_t impl_name ()
 
int num_pages () const
 
void dump (str_t headline=STR_NULL) const
 

Protected Member Functions

 rel_c (str_t rel_name, int bound, int free, str_t impl)
 

Protected Attributes

mpool_c MemPool
 
str_t Name
 
bool MemErr
 
int NumRows
 
int BoundArgs
 
int FreeArgs
 
str_t ImplName
 

Member Function Documentation

int rel_c::bound_args ( )
inline

Number of bound (input) arguments of the relation.

The sum with the number of free arguments gives the arity of the relation, i.e. the number of columns.

Returns
Number of arguments that must be given to access rows in this relation. 0 means that this is a list (i.e. one can do a full table scan).
int rel_c::free_args ( )
inline

Number of free (output) arguments of the relation.

The sum with the number of bound arguments gives the arity of the relation, i.e. the number of columns.

Returns
Number of arguments for which a lookuo operation returns values (or really a set of rows of values). 0 means that this is a set (i.e. one can only do an element test).
str_t rel_c::impl_name ( )
inline

Implementation (data structure) used for this relation.

This method returns a short name of the data structure used for implementing this relation.

Returns
Implementation name, e.g. "Extendible hash table".

The documentation for this class was generated from the following files: