exo first step.

This commit is contained in:
Vítor Santos Costa
2013-01-07 09:47:14 +00:00
parent 3565a01f1e
commit f063a2bd52
12 changed files with 657 additions and 8 deletions

View File

@@ -159,6 +159,21 @@ typedef union clause_ptr {
struct static_index *si;
} ClausePointer;
typedef struct index_t {
struct index_t *next, *prev;
UInt nels;
UInt arity;
PredEntry *ap;
CELL bmap;
int is_key;
UInt hsize;
CELL **key;
CELL *cls;
CELL *links;
yamop *code;
} Index_t;
typedef struct dbterm_list {
/* a list of dbterms associated with a clause */
DBTerm *dbterms;
@@ -228,6 +243,10 @@ void STD_PROTO(Yap_RemoveClauseFromIndex,(PredEntry *,yamop *));
LogUpdClause *STD_PROTO(Yap_NthClause,(PredEntry *,Int));
LogUpdClause *STD_PROTO(Yap_FollowIndexingCode,(PredEntry *,yamop *, Term *, yamop *,yamop *));
/* exo.c */
yamop *Yap_ExoLookup(PredEntry *ap);
CELL Yap_NextExo(choiceptr cpt, struct index_t *it);
#if USE_THREADED_CODE
#define OP_HASH_SIZE 2048