C++ compatibility.

This commit is contained in:
Vítor Santos Costa 2014-04-28 11:48:24 +01:00
parent 6bcda04a52
commit 785e404de4
3 changed files with 8 additions and 3 deletions

View File

@ -110,11 +110,13 @@ CELL *Yap_HeapStoreOpaqueTerm(Term t);
size_t Yap_OpaqueTermToString(Term t, char *str, size_t max);
/* c_interface.c */
#ifndef YAP_CPP_INTERFACE
Int YAP_Execute(struct pred_entry *, CPredicate);
Int YAP_ExecuteFirst(struct pred_entry *, CPredicate);
Int YAP_ExecuteNext(struct pred_entry *, CPredicate);
Int YAP_ExecuteOnCut(struct pred_entry *, CPredicate, struct cut_c_str *);
Int YAP_RunGoalOnce(Term);
#endif
/* cdmgr.c */
Term Yap_all_calls(void);

View File

@ -435,10 +435,8 @@ LogUpdClause *Yap_new_ludbe(Term, PredEntry *, UInt);
Term Yap_LUInstance(LogUpdClause *, UInt);
/* udi.c */
void Yap_udi_init(void);
int Yap_new_udi_clause(PredEntry *, yamop *, Term);
yamop *Yap_udi_search(PredEntry *);
void Yap_udi_abolish(PredEntry *p);
#ifdef DEBUG
void Yap_bug_location(yamop *);

View File

@ -83,8 +83,9 @@ typedef int pthread_t;
typedef uintptr_t word; /* Anonymous 4 byte object */
#ifndef YAP_CPP_INTERFACE
typedef int bool;
#endif
#define GLOBAL_LD (LOCAL_PL_local_data_p)
@ -209,10 +210,12 @@ typedef struct initialise_handle * InitialiseHandle;
// THIS HAS TO BE ABSTRACTED
#ifndef YAP_CPP_INTERFACE
#define true(s, a) ((s)->flags & (a))
#define false(s, a) (!true((s), (a)))
#define set(s, a) ((s)->flags |= (a))
#define clear(s, a) ((s)->flags &= ~(a))
#endif
#define P_QUASI_QUOTATION_SYNTAX (0x00000004) /* <![Type[Quasi Quote]]> */
#define PLFLAG_CHARESCAPE 0x000001 /* handle \ in atoms */
@ -278,8 +281,10 @@ getUnknownModule(module_t m);
#define setPrologFlagMask(flag) set(&LD->prolog_flag.mask, flag)
#define clearPrologFlagMask(flag) clear(&LD->prolog_flag.mask, flag)
#ifndef YAP_CPP_INTERFACE
COMMON(int) debugmode(debug_type new, debug_type *old);
COMMON(int) tracemode(debug_type new, debug_type *old);
#endif
COMMON(void) Yap_setCurrentSourceLocation( void *rd );
#define SIG_PROLOG_OFFSET 32 /* Start of Prolog signals */