struct ClauseList { int n; /*counter*/ void *start; void *end; }; typedef struct ClauseList *clause_list_t; clause_list_t Yap_ClauseListInit(clause_list_t in); int Yap_ClauseListExtend(clause_list_t cl, void * clause, void *pred); void Yap_ClauseListClose(clause_list_t cl); int Yap_ClauseListDestroy(clause_list_t cl); void *Yap_ClauseListToClause(clause_list_t cl); void *Yap_ClauseListCode(clause_list_t cl); void *Yap_FAILCODE(void); #define Yap_ClauseListCount(cl) ((cl)->n)