indenting
This commit is contained in:
parent
c26e5afaf0
commit
cc6949681b
554
C/globals.c
554
C/globals.c
File diff suppressed because it is too large
Load Diff
116
C/userpreds.c
116
C/userpreds.c
@ -17,7 +17,7 @@
|
|||||||
#ifdef SCCS
|
#ifdef SCCS
|
||||||
static char SccsId[] = "%W% %G%";
|
static char SccsId[] = "%W% %G%";
|
||||||
#endif
|
#endif
|
||||||
|
a
|
||||||
/*
|
/*
|
||||||
* This file is an entry for user defined C-predicates.
|
* This file is an entry for user defined C-predicates.
|
||||||
*
|
*
|
||||||
@ -51,7 +51,8 @@ static char SccsId[] = "%W% %G%";
|
|||||||
/* You should include here the prototypes for all static functions */
|
/* You should include here the prototypes for all static functions */
|
||||||
|
|
||||||
#ifdef EUROTRA
|
#ifdef EUROTRA
|
||||||
static int p_clean(void);
|
static int
|
||||||
|
p_clean(void);
|
||||||
static int p_namelength(void);
|
static int p_namelength(void);
|
||||||
static int p_getpid(void);
|
static int p_getpid(void);
|
||||||
static int p_exit(void);
|
static int p_exit(void);
|
||||||
@ -68,13 +69,10 @@ static SignalProc skel_signal(int, SignalProc);
|
|||||||
static int chdir(char *);
|
static int chdir(char *);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifdef SFUNC
|
#ifdef SFUNC
|
||||||
static int p_softfunctor(void);
|
static int p_softfunctor(void);
|
||||||
#endif /* SFUNC */
|
#endif /* SFUNC */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef USERPREDS
|
#ifdef USERPREDS
|
||||||
/* These are some examples of user-defined functions */
|
/* These are some examples of user-defined functions */
|
||||||
|
|
||||||
@ -102,9 +100,7 @@ static int p_softfunctor(void);
|
|||||||
|
|
||||||
/* occurs-in --> checks if the variable V occurs in term S */
|
/* occurs-in --> checks if the variable V occurs in term S */
|
||||||
|
|
||||||
static int
|
static int occurs_check(V, T) Term V, T;
|
||||||
occurs_check(V, T)
|
|
||||||
Term V, T;
|
|
||||||
{
|
{
|
||||||
/* V and S are always derefed */
|
/* V and S are always derefed */
|
||||||
if (IsVarTerm(T)) {
|
if (IsVarTerm(T)) {
|
||||||
@ -112,8 +108,7 @@ occurs_check(V, T)
|
|||||||
} else if (IsPrimitiveTerm(T)) {
|
} else if (IsPrimitiveTerm(T)) {
|
||||||
return (TRUE);
|
return (TRUE);
|
||||||
} else if (IsPairTerm(T)) {
|
} else if (IsPairTerm(T)) {
|
||||||
return (occurs_check(V, HeadOfTerm(T))
|
return (occurs_check(V, HeadOfTerm(T)) && occurs_check(V, TailOfTerm(T)));
|
||||||
&& occurs_check(V, TailOfTerm(T)));
|
|
||||||
} else if (IsApplTerm(T)) {
|
} else if (IsApplTerm(T)) {
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
unsigned int arity = ArityOfFunctor(FunctorOfTerm(T));
|
unsigned int arity = ArityOfFunctor(FunctorOfTerm(T));
|
||||||
@ -131,9 +126,7 @@ occurs_check(V, T)
|
|||||||
arguments before dereferencing, otherwise unify() won't be
|
arguments before dereferencing, otherwise unify() won't be
|
||||||
to wake possible bound variables
|
to wake possible bound variables
|
||||||
*/
|
*/
|
||||||
static int
|
static int full_unification(T1, T2) Term T1, T2;
|
||||||
full_unification(T1, T2)
|
|
||||||
Term T1, T2;
|
|
||||||
{
|
{
|
||||||
Term t1 = Deref(T1);
|
Term t1 = Deref(T1);
|
||||||
Term t2 = Deref(T2);
|
Term t2 = Deref(T2);
|
||||||
@ -182,21 +175,16 @@ Term T1, T2;
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int p_occurs_check() { /* occurs_check(?,?) */
|
||||||
p_occurs_check()
|
|
||||||
{ /* occurs_check(?,?) */
|
|
||||||
return (occurs_check(Deref(ARG1), Deref(DARG2)));
|
return (occurs_check(Deref(ARG1), Deref(DARG2)));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Out of date, use unify_with_occurs_check instead*/
|
/* Out of date, use unify_with_occurs_check instead*/
|
||||||
static int
|
static int p_unify() { /* unify(?,?) */
|
||||||
p_unify()
|
|
||||||
{ /* unify(?,?) */
|
|
||||||
/* routines that perform unification must receive the original arguments */
|
/* routines that perform unification must receive the original arguments */
|
||||||
return (full_unification(ARG1, ARG2));
|
return (full_unification(ARG1, ARG2));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* One example of a counter using the atom value functions counter(Atom,M,N)
|
* One example of a counter using the atom value functions counter(Atom,M,N)
|
||||||
*
|
*
|
||||||
@ -205,9 +193,7 @@ p_unify()
|
|||||||
* value. The third argument then be unified with the next integer, which
|
* value. The third argument then be unified with the next integer, which
|
||||||
* will become the current counter value.
|
* will become the current counter value.
|
||||||
*/
|
*/
|
||||||
static int
|
static int p_counter() { /* counter(+Atom,?Number,?Next) */
|
||||||
p_counter()
|
|
||||||
{ /* counter(+Atom,?Number,?Next) */
|
|
||||||
Term TCount, TNext, T1, T2;
|
Term TCount, TNext, T1, T2;
|
||||||
Atom a;
|
Atom a;
|
||||||
/* Int -> an YAP integer */
|
/* Int -> an YAP integer */
|
||||||
@ -248,9 +234,7 @@ p_counter()
|
|||||||
* avoid it whenever possible
|
* avoid it whenever possible
|
||||||
*/
|
*/
|
||||||
#ifdef COMMENT
|
#ifdef COMMENT
|
||||||
static int
|
static int p_iconcat() { /* iconcat(+L1,+L2,-L) */
|
||||||
p_iconcat()
|
|
||||||
{ /* iconcat(+L1,+L2,-L) */
|
|
||||||
Term Tkeep[1025]; /* Will do it just for lists less
|
Term Tkeep[1025]; /* Will do it just for lists less
|
||||||
* than 1024 elements long */
|
* than 1024 elements long */
|
||||||
register Term *Tkp = Tkeep;
|
register Term *Tkp = Tkeep;
|
||||||
@ -276,9 +260,7 @@ p_iconcat()
|
|||||||
}
|
}
|
||||||
#endif /* COMMENT */
|
#endif /* COMMENT */
|
||||||
|
|
||||||
static int
|
static int p_iconcat() { /* iconcat(+L1,+L2,-L) */
|
||||||
p_iconcat()
|
|
||||||
{ /* iconcat(+L1,+L2,-L) */
|
|
||||||
register Term *Tkp = H, *tp;
|
register Term *Tkp = H, *tp;
|
||||||
register Term L0, L1;
|
register Term L0, L1;
|
||||||
Term T2;
|
Term T2;
|
||||||
@ -302,8 +284,7 @@ p_iconcat()
|
|||||||
|
|
||||||
#ifdef EUROTRA
|
#ifdef EUROTRA
|
||||||
|
|
||||||
static int
|
static int p_clean() /* predicate clean for ets */
|
||||||
p_clean() /* predicate clean for ets */
|
|
||||||
/*
|
/*
|
||||||
* clean(FB,CFB) :- FB =.. [fb|L],!, clean1(L,CL), CFB =.. [fb|CL].
|
* clean(FB,CFB) :- FB =.. [fb|L],!, clean1(L,CL), CFB =.. [fb|CL].
|
||||||
* clean(FB,CFB) :- var(FB).
|
* clean(FB,CFB) :- var(FB).
|
||||||
@ -318,8 +299,7 @@ p_clean() /* predicate clean for ets */
|
|||||||
|
|
||||||
if (IsVarTerm(t1))
|
if (IsVarTerm(t1))
|
||||||
return (TRUE);
|
return (TRUE);
|
||||||
if (!(IsApplTerm(t1)
|
if (!(IsApplTerm(t1) && NameOfFunctor(FunctorOfTerm(t1)) == AtomFB))
|
||||||
&& NameOfFunctor(FunctorOfTerm(t1)) == AtomFB))
|
|
||||||
return (FALSE);
|
return (FALSE);
|
||||||
arity = ArityOfFunctor(FunctorOfTerm(t1));
|
arity = ArityOfFunctor(FunctorOfTerm(t1));
|
||||||
#ifdef SFUNC
|
#ifdef SFUNC
|
||||||
@ -349,9 +329,7 @@ static Term *subs_table;
|
|||||||
static int subs_entries;
|
static int subs_entries;
|
||||||
#define SUBS_TABLE_SIZE 500
|
#define SUBS_TABLE_SIZE 500
|
||||||
|
|
||||||
static int
|
static int subsumes(T1, T2) Term T1, T2;
|
||||||
subsumes(T1, T2)
|
|
||||||
Term T1, T2;
|
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
@ -441,7 +419,8 @@ Term T1, T2;
|
|||||||
*TR++ = Unsigned(a2p);
|
*TR++ = Unsigned(a2p);
|
||||||
return (TRUE);
|
return (TRUE);
|
||||||
}
|
}
|
||||||
while ((*pt++ = *a1a++));
|
while ((*pt++ = *a1a++))
|
||||||
|
;
|
||||||
*a1p = Unsigned(H);
|
*a1p = Unsigned(H);
|
||||||
if (a1p < HB)
|
if (a1p < HB)
|
||||||
*TR++ = Unsigned(a1p);
|
*TR++ = Unsigned(a1p);
|
||||||
@ -486,18 +465,14 @@ Term T1, T2;
|
|||||||
return (FALSE);
|
return (FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int p_subsumes() {
|
||||||
p_subsumes()
|
|
||||||
{
|
|
||||||
Term work_space[SUBS_TABLE_SIZE];
|
Term work_space[SUBS_TABLE_SIZE];
|
||||||
subs_table = work_space;
|
subs_table = work_space;
|
||||||
subs_entries = 0;
|
subs_entries = 0;
|
||||||
return (subsumes(Deref(ARG1), Deref(ARG2)));
|
return (subsumes(Deref(ARG1), Deref(ARG2)));
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int p_namelength() {
|
||||||
p_namelength()
|
|
||||||
{
|
|
||||||
register Term t = Deref(ARG1);
|
register Term t = Deref(ARG1);
|
||||||
Term tf;
|
Term tf;
|
||||||
|
|
||||||
@ -519,9 +494,7 @@ p_namelength()
|
|||||||
return (FALSE);
|
return (FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int p_getpid() {
|
||||||
p_getpid()
|
|
||||||
{
|
|
||||||
#ifndef MPW
|
#ifndef MPW
|
||||||
Term t = MkIntTerm(getpid());
|
Term t = MkIntTerm(getpid());
|
||||||
#else
|
#else
|
||||||
@ -530,9 +503,7 @@ p_getpid()
|
|||||||
return (Yap_unify_constant(ARG1, t));
|
return (Yap_unify_constant(ARG1, t));
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int p_exit() {
|
||||||
p_exit()
|
|
||||||
{
|
|
||||||
register Term t = Deref(ARG1);
|
register Term t = Deref(ARG1);
|
||||||
if (IsVarTerm(t) || !IsIntTerm(t))
|
if (IsVarTerm(t) || !IsIntTerm(t))
|
||||||
return (FALSE);
|
return (FALSE);
|
||||||
@ -542,9 +513,7 @@ p_exit()
|
|||||||
|
|
||||||
static int current_pos;
|
static int current_pos;
|
||||||
|
|
||||||
static int
|
static int p_incrcounter() {
|
||||||
p_incrcounter()
|
|
||||||
{
|
|
||||||
register Term t = Deref(ARG1);
|
register Term t = Deref(ARG1);
|
||||||
if (IsVarTerm(t) || !IsIntTerm(t))
|
if (IsVarTerm(t) || !IsIntTerm(t))
|
||||||
return (FALSE);
|
return (FALSE);
|
||||||
@ -552,9 +521,7 @@ p_incrcounter()
|
|||||||
return (TRUE);
|
return (TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int p_setcounter() {
|
||||||
p_setcounter()
|
|
||||||
{
|
|
||||||
register Term t = Deref(ARG1);
|
register Term t = Deref(ARG1);
|
||||||
if (IsVarTerm(t) || !IsIntTerm(t)) {
|
if (IsVarTerm(t) || !IsIntTerm(t)) {
|
||||||
return (Yap_unify_constant(ARG1, MkIntTerm(current_pos)));
|
return (Yap_unify_constant(ARG1, MkIntTerm(current_pos)));
|
||||||
@ -573,24 +540,20 @@ p_setcounter()
|
|||||||
#define EOF -1
|
#define EOF -1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static int
|
static int p_trapsignal(void) {
|
||||||
p_trapsignal(void)
|
|
||||||
{
|
|
||||||
#ifndef MPW
|
#ifndef MPW
|
||||||
signal(SIGINT, SIG_IGN);
|
signal(SIGINT, SIG_IGN);
|
||||||
#endif
|
#endif
|
||||||
return (TRUE);
|
return (TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#define varstarter(ch) ((ch >= 'A' && ch <= 'Z') || ch == '_')
|
#define varstarter(ch) ((ch >= 'A' && ch <= 'Z') || ch == '_')
|
||||||
#define idstarter(ch) (ch >= 'a' && ch <= 'z')
|
#define idstarter(ch) (ch >= 'a' && ch <= 'z')
|
||||||
#define idchar(ch) ((ch>='0' && ch<='9') || (ch>='A' && ch<='Z') || \
|
#define idchar(ch) \
|
||||||
|
((ch >= '0' && ch <= '9') || (ch >= 'A' && ch <= 'Z') || \
|
||||||
(ch >= 'a' && ch <= 'z') || ch == '_')
|
(ch >= 'a' && ch <= 'z') || ch == '_')
|
||||||
|
|
||||||
static int
|
static int p_grab_tokens() {
|
||||||
p_grab_tokens()
|
|
||||||
{
|
|
||||||
Term *p = ASP - 20, *p0, t;
|
Term *p = ASP - 20, *p0, t;
|
||||||
Functor IdFunctor, VarFunctor;
|
Functor IdFunctor, VarFunctor;
|
||||||
char ch, IdChars[256], *chp;
|
char ch, IdChars[256], *chp;
|
||||||
@ -605,7 +568,8 @@ p_grab_tokens()
|
|||||||
if (ch == '.' || ch == EOF)
|
if (ch == '.' || ch == EOF)
|
||||||
break;
|
break;
|
||||||
if (ch == '%') {
|
if (ch == '%') {
|
||||||
while ((ch = Yap_PlGetchar()) != 10);
|
while ((ch = Yap_PlGetchar()) != 10)
|
||||||
|
;
|
||||||
ch = Yap_PlGetchar();
|
ch = Yap_PlGetchar();
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -622,7 +586,6 @@ p_grab_tokens()
|
|||||||
*p-- = Yap_MkApplTerm(IdFunctor, 1, &t);
|
*p-- = Yap_MkApplTerm(IdFunctor, 1, &t);
|
||||||
ch = Yap_PlGetchar();
|
ch = Yap_PlGetchar();
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
}
|
}
|
||||||
if (varstarter(ch)) {
|
if (varstarter(ch)) {
|
||||||
chp = IdChars;
|
chp = IdChars;
|
||||||
@ -668,9 +631,7 @@ p_grab_tokens()
|
|||||||
|
|
||||||
#ifdef SFUNC
|
#ifdef SFUNC
|
||||||
|
|
||||||
static
|
static p_softfunctor() {
|
||||||
p_softfunctor()
|
|
||||||
{
|
|
||||||
Term nilvalue = 0;
|
Term nilvalue = 0;
|
||||||
SFEntry *pe;
|
SFEntry *pe;
|
||||||
Prop p0;
|
Prop p0;
|
||||||
@ -703,13 +664,12 @@ p_softfunctor()
|
|||||||
static Int
|
static Int
|
||||||
p_matching_distances(void)
|
p_matching_distances(void)
|
||||||
{
|
{
|
||||||
return(fabs(FloatOfTerm(Deref(ARG1))-FloatOfTerm(Deref(ARG2))) <= FloatOfTerm(Deref(ARG3)));
|
return(fabs(FloatOfTerm(Deref(ARG1))-FloatOfTerm(Deref(ARG2))) <=
|
||||||
|
FloatOfTerm(Deref(ARG3)));
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void
|
void Yap_InitUserCPreds(void) {
|
||||||
Yap_InitUserCPreds(void)
|
|
||||||
{
|
|
||||||
#ifdef XINTERFACE
|
#ifdef XINTERFACE
|
||||||
Yap_InitXPreds();
|
Yap_InitXPreds();
|
||||||
#endif
|
#endif
|
||||||
@ -721,21 +681,19 @@ Yap_InitUserCPreds(void)
|
|||||||
Yap_InitCPred("incr_counter", 1, p_incrcounter, SafePredFlag | SyncPredFlag);
|
Yap_InitCPred("incr_counter", 1, p_incrcounter, SafePredFlag | SyncPredFlag);
|
||||||
Yap_InitCPred("set_counter", 1, p_setcounter, SafePredFlag | SyncPredFlag);
|
Yap_InitCPred("set_counter", 1, p_setcounter, SafePredFlag | SyncPredFlag);
|
||||||
Yap_InitCPred("trap_signal", 0, p_trapsignal, SafePredFlag | SyncPredFlag);
|
Yap_InitCPred("trap_signal", 0, p_trapsignal, SafePredFlag | SyncPredFlag);
|
||||||
Yap_InitCPred("mark2_grab_tokens", 1, p_grab_tokens, SafePredFlag|SyncPredFlag);
|
Yap_InitCPred("mark2_grab_tokens", 1, p_grab_tokens,
|
||||||
|
SafePredFlag | SyncPredFlag);
|
||||||
Yap_InitCPred("subsumes", 2, p_subsumes, SafePredFlag);
|
Yap_InitCPred("subsumes", 2, p_subsumes, SafePredFlag);
|
||||||
#endif
|
#endif
|
||||||
#ifdef SFUNC
|
#ifdef SFUNC
|
||||||
Yap_InitCPred("sparse_functor", 2, p_softfunctor, SafePredFlag);
|
Yap_InitCPred("sparse_functor", 2, p_softfunctor, SafePredFlag);
|
||||||
#endif /* SFUNC */
|
#endif /* SFUNC */
|
||||||
/* Yap_InitCPred("match_distances", 3, p_matching_distances, SafePredFlag); */
|
/* Yap_InitCPred("match_distances", 3, p_matching_distances, SafePredFlag);
|
||||||
|
*/
|
||||||
/* Yap_InitCPred("unify",2,p_unify,SafePredFlag); */
|
/* Yap_InitCPred("unify",2,p_unify,SafePredFlag); */
|
||||||
/* Yap_InitCPred("occurs_check",2,p_occurs_check,SafePredFlag); */
|
/* Yap_InitCPred("occurs_check",2,p_occurs_check,SafePredFlag); */
|
||||||
/* Yap_InitCPred("counter",3,p_counter,SafePredFlag); */
|
/* Yap_InitCPred("counter",3,p_counter,SafePredFlag); */
|
||||||
/* Yap_InitCPred("iconcat",3,p_iconcat,SafePredFlag); */
|
/* Yap_InitCPred("iconcat",3,p_iconcat,SafePredFlag); */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Yap_InitUserBacks(void) {}
|
||||||
void
|
|
||||||
Yap_InitUserBacks(void)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
247
H/YapGFlagInfo.h
247
H/YapGFlagInfo.h
@ -30,21 +30,32 @@ Set or read system properties for _Param_:
|
|||||||
/// `address_bits`
|
/// `address_bits`
|
||||||
///
|
///
|
||||||
/// Number of address bits in the machine, either 64 or 32 bits.
|
/// Number of address bits in the machine, either 64 or 32 bits.
|
||||||
YAP_FLAG( ADDRESS_BITS_FLAG, "address_bits", false, nat, BITNESS , NULL ), /** `address_bits`
|
YAP_FLAG(ADDRESS_BITS_FLAG, "address_bits", false, nat, BITNESS,
|
||||||
|
NULL), /** `address_bits`
|
||||||
Number of address bits in the machine, either 64 or 32 bits */
|
Number of address bits in the machine, either 64 or 32 bits */
|
||||||
YAP_FLAG( AGC_MARGIN_FLAG, "agc_margin", true, nat, "10000" , agc_threshold ), /**`agc_margin `
|
YAP_FLAG(AGC_MARGIN_FLAG, "agc_margin", true, nat, "10000",
|
||||||
|
agc_threshold), /**`agc_margin `
|
||||||
|
|
||||||
An integer: if this amount of atoms has been created since the last
|
An integer: if this amount of atoms has been created since the last
|
||||||
atom-garbage collection, perform atom garbage collection at the first
|
atom-garbage collection, perform atom garbage collection at the first
|
||||||
opportunity. Initial value is 10,000. May be changed. A value of 0
|
opportunity. Initial value is 10,000. May be changed. A value of 0
|
||||||
(zero) disables atom garbage collection.
|
(zero) disables atom garbage collection.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( ALLOW_ASSERT_FOR_STATIC_PREDICATES, "allow_assert_for_static_predicates", true, boolean, "true" , NULL ), /**< `allow asserting and retracting clauses of static predicates. */
|
YAP_FLAG(ALLOW_ASSERT_FOR_STATIC_PREDICATES,
|
||||||
|
"allow_assert_for_static_predicates", true, boolean, "true",
|
||||||
|
NULL), /**< `allow asserting and retracting clauses of static
|
||||||
|
predicates. */
|
||||||
|
|
||||||
/* YAP_FLAG( ALLOW_VARIABLE_NAME_AS_FUNCTOR_FLAG, "allow_variable_name_as_functor", true, boolean, "false" , NULL ), /\**< `allow_variable_name_as_functor` */
|
/* YAP_FLAG( ALLOW_VARIABLE_NAME_AS_FUNCTOR_FLAG,
|
||||||
|
"allow_variable_name_as_functor", true, boolean, "false" , NULL ), /\**<
|
||||||
|
`allow_variable_name_as_functor` */
|
||||||
|
|
||||||
/* allow A(X) *\/ */
|
/* allow
|
||||||
YAP_FLAG( ANSWER_FORMAT_FLAG, "answer_format", true, isatom, "~p" , Yap_set_fpu_exceptions ), /** `arithmetic_exceptions `
|
* A(X)
|
||||||
|
* *\/
|
||||||
|
*/
|
||||||
|
YAP_FLAG(ANSWER_FORMAT_FLAG, "answer_format", true, isatom, "~p",
|
||||||
|
NULL), /** `arithmetic_exceptions `
|
||||||
|
|
||||||
Read-write flag telling whether arithmetic exceptions generate
|
Read-write flag telling whether arithmetic exceptions generate
|
||||||
Prolog exceptions. If enabled:
|
Prolog exceptions. If enabled:
|
||||||
@ -61,7 +72,8 @@ YAP_FLAG( ANSWER_FORMAT_FLAG, "answer_format", true, isatom, "~p" , Yap_set_fpu
|
|||||||
X = (+inf).
|
X = (+inf).
|
||||||
~~~~
|
~~~~
|
||||||
|
|
||||||
It is `true` by default, but it is disabled by packages like CLP(BN) and ProbLog.
|
It is `true` by default, but it is disabled by packages like CLP(BN) and
|
||||||
|
ProbLog.
|
||||||
*/
|
*/
|
||||||
#if __APPLE__
|
#if __APPLE__
|
||||||
YAP_FLAG(APPLE_FLAG, "apple", false, boolean, "true", NULL), /**< `apple`
|
YAP_FLAG(APPLE_FLAG, "apple", false, boolean, "true", NULL), /**< `apple`
|
||||||
@ -72,15 +84,18 @@ running on an Apple machine.
|
|||||||
#endif
|
#endif
|
||||||
YAP_FLAG(ARCH_FLAG, "arch", false, isatom, YAP_ARCH, NULL),
|
YAP_FLAG(ARCH_FLAG, "arch", false, isatom, YAP_ARCH, NULL),
|
||||||
YAP_FLAG(ARGV_FLAG, "argv", false, argv, "?-", NULL),
|
YAP_FLAG(ARGV_FLAG, "argv", false, argv, "?-", NULL),
|
||||||
YAP_FLAG( ARITHMETIC_EXCEPTIONS_FLAG, "arithmetic_exceptions", true, boolean, "true" , NULL ),
|
YAP_FLAG(ARITHMETIC_EXCEPTIONS_FLAG, "arithmetic_exceptions", true, boolean,
|
||||||
YAP_FLAG( BACKQUOTED_STRING_FLAG, "backquoted_string", true, isatom, "string" , ), /**>
|
"true", NULL),
|
||||||
|
YAP_FLAG(BACKQUOTED_STRING_FLAG, "backquoted_string", true, isatom,
|
||||||
|
"string", ), /**>
|
||||||
If _Value_ is unbound, tell whether a double quoted list of characters
|
If _Value_ is unbound, tell whether a double quoted list of characters
|
||||||
token is converted to a list of atoms, `chars`, to a list of integers,
|
token is converted to a list of atoms, `chars`, to a list of integers,
|
||||||
`codes`, or to a single atom, `atom`. If _Value_ is bound, set to
|
`codes`, or to a single atom, `atom`. If _Value_ is bound, set to
|
||||||
the corresponding behavior. The default value is `string`
|
the corresponding behavior. The default value is `string`
|
||||||
*/
|
*/
|
||||||
|
|
||||||
YAP_FLAG( BOUNDED_FLAG, "bounded", false, boolean, "false" , NULL ), /**< `bounded` is iso
|
YAP_FLAG(BOUNDED_FLAG, "bounded", false, boolean, "false",
|
||||||
|
NULL), /**< `bounded` is iso
|
||||||
|
|
||||||
Read-only flag telling whether integers are bounded. The value depends
|
Read-only flag telling whether integers are bounded. The value depends
|
||||||
on whether YAP uses the GMP library or not.
|
on whether YAP uses the GMP library or not.
|
||||||
@ -90,57 +105,75 @@ YAP_FLAG( C_CFLAGS_FLAG, "c_cflags", false, isatom, C_CFLAGS , NULL ),
|
|||||||
YAP_FLAG(C_LDFLAGS_FLAG, "c_ldflags", false, isatom, C_LDFLAGS, NULL),
|
YAP_FLAG(C_LDFLAGS_FLAG, "c_ldflags", false, isatom, C_LDFLAGS, NULL),
|
||||||
YAP_FLAG(C_LIBPLSO_FLAG, "c_libplso", false, isatom, C_LIBPLSO, NULL),
|
YAP_FLAG(C_LIBPLSO_FLAG, "c_libplso", false, isatom, C_LIBPLSO, NULL),
|
||||||
YAP_FLAG(C_LIBS_FLAG, "c_libs", false, isatom, C_LIBS, NULL),
|
YAP_FLAG(C_LIBS_FLAG, "c_libs", false, isatom, C_LIBS, NULL),
|
||||||
YAP_FLAG( CHAR_CONVERSION_FLAG, "char_conversion", true, boolean, "false" , NULL ), /**< `char_conversion is iso`
|
YAP_FLAG(CHAR_CONVERSION_FLAG, "char_conversion", true, boolean, "false",
|
||||||
|
NULL), /**< `char_conversion is iso`
|
||||||
|
|
||||||
Writable flag telling whether a character conversion table is used when
|
Writable flag telling whether a character conversion table is used when
|
||||||
reading terms. The default value for this flag is `off` except in
|
reading terms. The default value for this flag is `off` except in
|
||||||
`sicstus` and `iso` language modes, where it is `on`.
|
`sicstus` and `iso` language modes, where it is `on`.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( CHARACTER_ESCAPES_FLAG, "character_escapes", true, boolean, "true" , NULL ), /**< `character_escapes is iso `
|
YAP_FLAG(CHARACTER_ESCAPES_FLAG, "character_escapes", true, boolean, "true",
|
||||||
|
NULL), /**< `character_escapes is iso `
|
||||||
|
|
||||||
Writable flag telling whether a character escapes are enables,
|
Writable flag telling whether a character escapes are enables,
|
||||||
`true`, or disabled, `false`. The default value for this flag is
|
`true`, or disabled, `false`. The default value for this flag is
|
||||||
`true`. */
|
`true`. */
|
||||||
YAP_FLAG( COLON_SETS_CALLING_CONTEXT_FLAG, "colon_sets_calling_context", true, boolean, "true" , NULL ),
|
YAP_FLAG(COLON_SETS_CALLING_CONTEXT_FLAG, "colon_sets_calling_context",
|
||||||
YAP_FLAG( COMPILED_AT_FLAG, "compiled_at", false, isatom, YAP_COMPILED_AT , NULL ), /**< `compiled_at `
|
true, boolean, "true", NULL),
|
||||||
|
YAP_FLAG(COMPILED_AT_FLAG, "compiled_at", false, isatom, YAP_COMPILED_AT,
|
||||||
|
NULL), /**< `compiled_at `
|
||||||
|
|
||||||
Read-only flag that gives the time when the main YAP binary was compiled. It is obtained staight from the __TIME__ macro, as defined in the C99.
|
Read-only flag that gives the time when the main YAP binary was compiled. It is
|
||||||
|
obtained staight from the __TIME__ macro, as defined in the C99.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( DEBUG_FLAG, "debug", true, boolean, "false" , NULL ), /**< `debug is iso `
|
YAP_FLAG(DEBUG_FLAG, "debug", true, boolean, "false",
|
||||||
|
NULL), /**< `debug is iso `
|
||||||
|
|
||||||
If _Value_ is unbound, tell whether debugging is `true` or
|
If _Value_ is unbound, tell whether debugging is `true` or
|
||||||
`false`. If _Value_ is bound to `true` enable debugging, and if
|
`false`. If _Value_ is bound to `true` enable debugging, and if
|
||||||
it is bound to `false` disable debugging.
|
it is bound to `false` disable debugging.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG(DEBUG_INFO_FLAG, "debug_info", true, boolean, "true", NULL),
|
YAP_FLAG(DEBUG_INFO_FLAG, "debug_info", true, boolean, "true", NULL),
|
||||||
YAP_FLAG( DEBUG_ON_ERROR_FLAG, "debug_on_error", true, boolean, "true" , NULL ),
|
YAP_FLAG(DEBUG_ON_ERROR_FLAG, "debug_on_error", true, boolean, "true",
|
||||||
YAP_FLAG( DEBUGGER_PRINT_OPTIONS_FLAG, "debugger_print_options", true, list_option, "[quoted(true),numbervars(true),portrayed(true),max_depth(10)]" , NULL ), /**< `debugger_print_options `
|
NULL),
|
||||||
|
YAP_FLAG(DEBUGGER_PRINT_OPTIONS_FLAG, "debugger_print_options", true,
|
||||||
|
list_option,
|
||||||
|
"[quoted(true),numbervars(true),portrayed(true),max_depth(10)]",
|
||||||
|
NULL), /**< `debugger_print_options `
|
||||||
|
|
||||||
If bound, set the argument to the `write_term/3` options the
|
If bound, set the argument to the `write_term/3` options the
|
||||||
debugger uses to write terms. If unbound, show the current options.
|
debugger uses to write terms. If unbound, show the current options.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( DEBUGGER_SHOW_CONTEXT_FLAG, "debugger_show_context", true, boolean, "false" , NULL ),
|
YAP_FLAG(DEBUGGER_SHOW_CONTEXT_FLAG, "debugger_show_context", true, boolean,
|
||||||
YAP_FLAG( DIALECT_FLAG, "dialect", false, ro, "yap" , NULL ), /**< `dialect `
|
"false", NULL),
|
||||||
|
YAP_FLAG(DIALECT_FLAG, "dialect", false, ro, "yap",
|
||||||
|
NULL), /**< `dialect `
|
||||||
|
|
||||||
Read-only flag that always returns `yap`.
|
Read-only flag that always returns `yap`.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( DISCONTIGUOUS_WARNINGS_FLAG, "discontiguous_warnings", true, boolean, "true" , NULL ), /**< `discontiguous_warnings `
|
YAP_FLAG(DISCONTIGUOUS_WARNINGS_FLAG, "discontiguous_warnings", true,
|
||||||
|
boolean, "true", NULL), /**< `discontiguous_warnings `
|
||||||
|
|
||||||
If `true` (default `true`) YAP checks for definitions of the same predicate that are separated by clauses for other predicates. This may indicate that different procedures have the sam*e name.
|
If `true` (default `true`) YAP checks for definitions of the same predicate that
|
||||||
|
are separated by clauses for other predicates. This may indicate that different
|
||||||
|
procedures have the sam*e name.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( DOLLAR_AS_LOWER_CASE_FLAG, "dollar_as_lower_case", true, boolean, "false" , NULL ), /**< `dollar_as_lower_case `
|
YAP_FLAG(DOLLAR_AS_LOWER_CASE_FLAG, "dollar_as_lower_case", true, boolean,
|
||||||
|
"false", NULL), /**< `dollar_as_lower_case `
|
||||||
|
|
||||||
If `off` (default) consider the character `$` a control character, if
|
If `off` (default) consider the character `$` a control character, if
|
||||||
`on` consider `$` a lower case character.
|
`on` consider `$` a lower case character.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( DOUBLE_QUOTES_FLAG, "double_quotes", true, isatom, "codes" , dqf ), /**< `double_quotes is iso `
|
YAP_FLAG(DOUBLE_QUOTES_FLAG, "double_quotes", true, isatom, "codes",
|
||||||
|
dqf), /**< `double_quotes is iso `
|
||||||
|
|
||||||
If _Value_ is unbound, tell whether a double quoted list of characters
|
If _Value_ is unbound, tell whether a double quoted list of characters
|
||||||
token is converted to a list of atoms, `chars`, to a list of integers,
|
token is converted to a list of atoms, `chars`, to a list of integers,
|
||||||
`codes`, or to a single atom, `atom`. If _Value_ is bound, set to
|
`codes`, or to a single atom, `atom`. If _Value_ is bound, set to
|
||||||
the corresponding behavior. The default value is `codes`. */
|
the corresponding behavior. The default value is `codes`. */
|
||||||
YAP_FLAG(EDITOR_FLAG, "editor", true, isatom, "$EDITOR", NULL),
|
YAP_FLAG(EDITOR_FLAG, "editor", true, isatom, "$EDITOR", NULL),
|
||||||
YAP_FLAG( EXECUTABLE_FLAG, "executable", false, isatom, "yap" , executable ), /**< `executable `
|
YAP_FLAG(EXECUTABLE_FLAG, "executable", false, isatom, "yap",
|
||||||
|
executable), /**< `executable `
|
||||||
|
|
||||||
Read-only flag. It unifies with an atom that gives the
|
Read-only flag. It unifies with an atom that gives the
|
||||||
original program path.
|
original program path.
|
||||||
@ -150,8 +183,10 @@ YAP_FLAG( FAST_FLAG, "fast", true, boolean, "false" , NULL ), /**< `fast `
|
|||||||
If `on` allow fast machine code, if `off` (default) disable it. Only
|
If `on` allow fast machine code, if `off` (default) disable it. Only
|
||||||
available in experimental implemexbntations.
|
available in experimental implemexbntations.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( FILE_NAME_VARIABLES_FLAG, "file_name_variables", true, boolean, "true" , NULL ),
|
YAP_FLAG(FILE_NAME_VARIABLES_FLAG, "file_name_variables", true, boolean,
|
||||||
YAP_FLAG( FLOAT_FORMAT_FLAG, "float_format", true, isatom, "%15e" , NULL ), /**< + `float_format `
|
"true", NULL),
|
||||||
|
YAP_FLAG(FLOAT_FORMAT_FLAG, "float_format", true, isatom, "%15e",
|
||||||
|
NULL), /**< + `float_format `
|
||||||
|
|
||||||
C-library `printf()` format specification used by write/1 and
|
C-library `printf()` format specification used by write/1 and
|
||||||
friends to determine how floating point numbers are printed. The
|
friends to determine how floating point numbers are printed. The
|
||||||
@ -164,13 +199,15 @@ YAP_FLAG( GC_FLAG, "gc", true, boolean, "on" , NULL ), /**< `gc`
|
|||||||
|
|
||||||
If `on` allow garbage collection (default), if `off` disable it.
|
If `on` allow garbage collection (default), if `off` disable it.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( GC_MARGIN_FLAG, "gc_margin", true, nat, "0" , gc_margin ), /**< `gc_margin `
|
YAP_FLAG(GC_MARGIN_FLAG, "gc_margin", true, nat, "0",
|
||||||
|
gc_margin), /**< `gc_margin `
|
||||||
|
|
||||||
Set or show the minimum free stack before starting garbage
|
Set or show the minimum free stack before starting garbage
|
||||||
collection. The default depends on total stack size.
|
collection. The default depends on total stack size.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( GC_TRACE_FLAG, "gc_trace", true, isatom, "off" , NULL ), /**< `gc_trace `
|
YAP_FLAG(GC_TRACE_FLAG, "gc_trace", true, isatom, "off",
|
||||||
|
NULL), /**< `gc_trace `
|
||||||
|
|
||||||
If `off` (default) do not show information on garbage collection
|
If `off` (default) do not show information on garbage collection
|
||||||
and stack shifts, if `on` inform when a garbage collection or stack
|
and stack shifts, if `on` inform when a garbage collection or stack
|
||||||
@ -179,7 +216,8 @@ collection and stack shifts. Last, if `very_verbose` give detailed
|
|||||||
information on data-structures found during the garbage collection
|
information on data-structures found during the garbage collection
|
||||||
process, namely, on choice-points.
|
process, namely, on choice-points.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( GENERATE_DEBUGGING_INFO_FLAG, "generate_debug_info", true, boolean, "true" , NULL ), /**< `generate_debug_info `
|
YAP_FLAG(GENERATE_DEBUGGING_INFO_FLAG, "generate_debug_info", true, boolean,
|
||||||
|
"true", NULL), /**< `generate_debug_info `
|
||||||
|
|
||||||
If `true` (default) generate debugging information for
|
If `true` (default) generate debugging information for
|
||||||
procedures, including source mode. If `false` predicates no
|
procedures, including source mode. If `false` predicates no
|
||||||
@ -188,13 +226,15 @@ source mode is disabled.
|
|||||||
|
|
||||||
*/
|
*/
|
||||||
YAP_FLAG(GMP_VERSION_FLAG, "gmp_version", false, isatom, "4.8.12", NULL),
|
YAP_FLAG(GMP_VERSION_FLAG, "gmp_version", false, isatom, "4.8.12", NULL),
|
||||||
YAP_FLAG( HALT_AFTER_CONSULT_FLAG, "halt_after_consult", false, boolean, "false" , NULL ),
|
YAP_FLAG(HALT_AFTER_CONSULT_FLAG, "halt_after_consult", false, boolean,
|
||||||
|
"false", NULL),
|
||||||
YAP_FLAG(HOME_FLAG, "home", false, isatom, YAP_ROOTDIR, NULL), /**< home `
|
YAP_FLAG(HOME_FLAG, "home", false, isatom, YAP_ROOTDIR, NULL), /**< home `
|
||||||
|
|
||||||
the root of the YAP installation, by default `/usr/local` in Unix or
|
the root of the YAP installation, by default `/usr/local` in Unix or
|
||||||
`c:\Yap` in Windows system. Can only be set at configure tien
|
`c:\Yap` in Windows system. Can only be set at configure tien
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( HOST_TYPE_FLAG, "host_type", false, isatom, HOST_ALIAS , NULL ), /**< host_type `
|
YAP_FLAG(HOST_TYPE_FLAG, "host_type", false, isatom, HOST_ALIAS,
|
||||||
|
NULL), /**< host_type `
|
||||||
|
|
||||||
Return `configure` system information, including the machine-id
|
Return `configure` system information, including the machine-id
|
||||||
for which YAP was compiled and Operating System information.
|
for which YAP was compiled and Operating System information.
|
||||||
@ -204,24 +244,29 @@ YAP_FLAG( INDEX_FLAG, "index", true, isatom, "multi" , indexer ), /**< `index `
|
|||||||
If `on` allow indexing (default), if `off` disable it, if
|
If `on` allow indexing (default), if `off` disable it, if
|
||||||
`single` allow on first argument only.
|
`single` allow on first argument only.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( INDEX_SUB_TERM_SEARCH_DEPTH_FLAG, "index_sub_term_search_depth", true, nat, "0" , NULL ), /**< `Index_sub_term_search_depth `
|
YAP_FLAG(INDEX_SUB_TERM_SEARCH_DEPTH_FLAG, "index_sub_term_search_depth",
|
||||||
|
true, nat, "0", NULL), /**< `Index_sub_term_search_depth `
|
||||||
|
|
||||||
Maximum bound on searching sub-terms for indexing, if `0` (default) no bound.
|
Maximum bound on searching sub-terms for indexing, if `0` (default) no bound.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( INFORMATIONAL_MESSAGES_FLAG, "informational_messages", true, isatom, "normal" , NULL ), /**< `informational_messages `
|
YAP_FLAG(INFORMATIONAL_MESSAGES_FLAG, "informational_messages", true,
|
||||||
|
isatom, "normal", NULL), /**< `informational_messages `
|
||||||
|
|
||||||
If `on` allow printing of informational messages, such as the ones
|
If `on` allow printing of informational messages, such as the ones
|
||||||
that are printed when consulting. If `off` disable printing
|
that are printed when consulting. If `off` disable printing
|
||||||
these messages. It is `on` by default except if YAP is booted with
|
these messages. It is `on` by default except if YAP is booted with
|
||||||
the `-L` flag.
|
the `-L` flag.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( INTEGER_ROUNDING_FUNCTION_FLAG, "integer_rounding_function", true, isatom, "toward_zero" , NULL ), /**< `integer_rounding_function is iso `
|
YAP_FLAG(INTEGER_ROUNDING_FUNCTION_FLAG, "integer_rounding_function", true,
|
||||||
|
isatom, "toward_zero",
|
||||||
|
NULL), /**< `integer_rounding_function is iso `
|
||||||
|
|
||||||
Read-only flag telling the rounding function used for integers. Takes the value
|
Read-only flag telling the rounding function used for integers. Takes the value
|
||||||
`toward_zero` for the current version of YAP.
|
`toward_zero` for the current version of YAP.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG(ISO_FLAG, "iso", true, boolean, "false", NULL),
|
YAP_FLAG(ISO_FLAG, "iso", true, boolean, "false", NULL),
|
||||||
YAP_FLAG( LANGUAGE_FLAG, "language", true, isatom, "yap" , NULL ), /**< `language `
|
YAP_FLAG(LANGUAGE_FLAG, "language", true, isatom, "yap",
|
||||||
|
NULL), /**< `language `
|
||||||
|
|
||||||
Choose whether YAP follows native, closer to C-Prolog, `yap`, iso-prolog,
|
Choose whether YAP follows native, closer to C-Prolog, `yap`, iso-prolog,
|
||||||
`iso` or SICStus Prolog, `sicstus`. The current default is
|
`iso` or SICStus Prolog, `sicstus`. The current default is
|
||||||
@ -230,24 +275,30 @@ style checking, handling calls to undefined procedures, how directives
|
|||||||
are interpreted, when to use dynamic, character escapes, and how files
|
are interpreted, when to use dynamic, character escapes, and how files
|
||||||
are consulted. Also check the `dialect` option.
|
are consulted. Also check the `dialect` option.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( MAX_ARITY_FLAG, "max_arity", false, isatom, "unbounded" , NULL ), /**< `max_arity is iso `
|
YAP_FLAG(MAX_ARITY_FLAG, "max_arity", false, isatom, "unbounded",
|
||||||
|
NULL), /**< `max_arity is iso `
|
||||||
|
|
||||||
Read-only flag telling the maximum arity of a functor. Takes the value
|
Read-only flag telling the maximum arity of a functor. Takes the value
|
||||||
`unbounded` for the current version of YAP.
|
`unbounded` for the current version of YAP.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( MAX_TAGGED_INTEGER_FLAG, "max_tagged_integer", false, at2n, "INT_MAX" , NULL ),
|
YAP_FLAG(MAX_TAGGED_INTEGER_FLAG, "max_tagged_integer", false, at2n,
|
||||||
|
"INT_MAX", NULL),
|
||||||
YAP_FLAG(MAX_THREADS_FLAG, "max_threads", false, at2n, "MAX_THREADS", NULL),
|
YAP_FLAG(MAX_THREADS_FLAG, "max_threads", false, at2n, "MAX_THREADS", NULL),
|
||||||
YAP_FLAG(MAX_WORKERS_FLAG, "max_workers", false, at2n, "MAX_WORKERS", NULL),
|
YAP_FLAG(MAX_WORKERS_FLAG, "max_workers", false, at2n, "MAX_WORKERS", NULL),
|
||||||
YAP_FLAG( MIN_TAGGED_INTEGER_FLAG, "min_tagged_integer", false, at2n, "INT_MIN" , NULL ),
|
YAP_FLAG(MIN_TAGGED_INTEGER_FLAG, "min_tagged_integer", false, at2n,
|
||||||
YAP_FLAG( N_OF_INTEGER_KEYS_IN_DB_FLAG, "n_of_integer_keys_in_db", false, ro, "256" , NULL ),
|
"INT_MIN", NULL),
|
||||||
|
YAP_FLAG(N_OF_INTEGER_KEYS_IN_DB_FLAG, "n_of_integer_keys_in_db", false, ro,
|
||||||
|
"256", NULL),
|
||||||
YAP_FLAG(OCCURS_CHECK_FLAG, "occurs_check", true, boolean, "false", NULL),
|
YAP_FLAG(OCCURS_CHECK_FLAG, "occurs_check", true, boolean, "false", NULL),
|
||||||
YAP_FLAG( OPEN_EXPANDS_FILENAME_FLAG, "open_expands_filename", true, boolean, "true" , NULL ), /**< `open_expands_filename `
|
YAP_FLAG(OPEN_EXPANDS_FILENAME_FLAG, "open_expands_filename", true, boolean,
|
||||||
|
"true", NULL), /**< `open_expands_filename `
|
||||||
|
|
||||||
If `true` the open/3 builtin performs filename-expansion
|
If `true` the open/3 builtin performs filename-expansion
|
||||||
before opening a file (SICStus Prolog like). If `false` it does not
|
before opening a file (SICStus Prolog like). If `false` it does not
|
||||||
(SWI-Prolog like).
|
(SWI-Prolog like).
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( OPEN_SHARED_OBJECT_FLAG, "open_shared_object", true, boolean, "true" , NULL ), /**< `open_shared_object `
|
YAP_FLAG(OPEN_SHARED_OBJECT_FLAG, "open_shared_object", true, boolean,
|
||||||
|
"true", NULL), /**< `open_shared_object `
|
||||||
|
|
||||||
If true, `open_shared_object/2` and friends are implemented,
|
If true, `open_shared_object/2` and friends are implemented,
|
||||||
providing access to shared libraries (`.so` files) or to dynamic link
|
providing access to shared libraries (`.so` files) or to dynamic link
|
||||||
@ -257,40 +308,54 @@ YAP_FLAG( OPTIMISE_FLAG, "optimise", true, boolean, "false" , NULL ),
|
|||||||
YAP_FLAG(OS_ARGV_FLAG, "os_argv", false, os_argv, "?-", NULL),
|
YAP_FLAG(OS_ARGV_FLAG, "os_argv", false, os_argv, "?-", NULL),
|
||||||
YAP_FLAG(PID_FLAG, "pid", false, ro, "0", NULL),
|
YAP_FLAG(PID_FLAG, "pid", false, ro, "0", NULL),
|
||||||
YAP_FLAG(PIPE_FLAG, "pipe", true, boolean, "true", NULL),
|
YAP_FLAG(PIPE_FLAG, "pipe", true, boolean, "true", NULL),
|
||||||
YAP_FLAG( PROFILING_FLAG, "profiling", true, boolean, "false" , NULL ), /**< `profiling `
|
YAP_FLAG(PROFILING_FLAG, "profiling", true, boolean, "false",
|
||||||
|
NULL), /**< `profiling `
|
||||||
|
|
||||||
If `off` (default) do not compile call counting information for
|
If `off` (default) do not compile call counting information for
|
||||||
procedures. If `on` compile predicates so that they calls and
|
procedures. If `on` compile predicates so that they calls and
|
||||||
retries to the predicate may be counted. Profiling data can be read through the
|
retries to the predicate may be counted. Profiling data can be read through the
|
||||||
call_count_data/3 built-in.
|
call_count_data/3 built-in.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( PROMPT_ALTERNATIVES_ON_FLAG, "prompt_alternatives_on", true, isatom, "determinism" , NULL ), /**< `prompt_alternatives_on(atom, changeable) `
|
YAP_FLAG(PROMPT_ALTERNATIVES_ON_FLAG, "prompt_alternatives_on", true,
|
||||||
|
isatom, "determinism", NULL), /**< `prompt_alternatives_on(atom,
|
||||||
|
changeable) `
|
||||||
|
|
||||||
SWI-Compatible option, determines prompting for alternatives in the Prolog toplevel. Default is <tt>groundness</tt>, YAP prompts for alternatives if and only if the query contains variables. The alternative, default in SWI-Prolog is <tt>determinism</tt> which implies the system prompts for alternatives if the goal succeeded while leaving choicepoints. */
|
SWI-Compatible option, determines prompting for alternatives in the Prolog
|
||||||
YAP_FLAG( QUASI_QUOTATIONS_FLAG, "quasi_quotations", true, boolean, "true" , NULL ),
|
toplevel. Default is <tt>groundness</tt>, YAP prompts for alternatives if and
|
||||||
|
only if the query contains variables. The alternative, default in SWI-Prolog is
|
||||||
|
<tt>determinism</tt> which implies the system prompts for alternatives if the
|
||||||
|
goal succeeded while leaving choicepoints. */
|
||||||
|
YAP_FLAG(QUASI_QUOTATIONS_FLAG, "quasi_quotations", true, boolean, "true",
|
||||||
|
NULL),
|
||||||
YAP_FLAG(READLINE_FLAG, "readline", true, boolean, "true", NULL),
|
YAP_FLAG(READLINE_FLAG, "readline", true, boolean, "true", NULL),
|
||||||
YAP_FLAG(REPORT_ERROR_FLAG, "report_error", true, boolean, "true", NULL),
|
YAP_FLAG(REPORT_ERROR_FLAG, "report_error", true, boolean, "true", NULL),
|
||||||
YAP_FLAG( SHARED_OBJECT_EXTENSION_FLAG, "shared_object_extension", false, isatom, SO_EXT ,NULL ), /**< `shared_object_extension `
|
YAP_FLAG(SHARED_OBJECT_EXTENSION_FLAG, "shared_object_extension", false,
|
||||||
|
isatom, SO_EXT, NULL), /**< `shared_object_extension `
|
||||||
|
|
||||||
Suffix associated with loadable code.
|
Suffix associated with loadable code.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( SHARED_OBJECT_SEARCH_PATH_FLAG, "shared_object_search_path", true, isatom, SO_PATH , NULL ), /**< `shared_object_search_path `
|
YAP_FLAG(SHARED_OBJECT_SEARCH_PATH_FLAG, "shared_object_search_path", true,
|
||||||
|
isatom, SO_PATH, NULL), /**< `shared_object_search_path `
|
||||||
|
|
||||||
Name of the environment variable used by the system to search for shared
|
Name of the environment variable used by the system to search for shared
|
||||||
objects.
|
objects.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( SIGNALS_FLAG, "signals", true, boolean, "true" , NULL ), /**< `signals`
|
YAP_FLAG(SIGNALS_FLAG, "signals", true, boolean, "true",
|
||||||
|
NULL), /**< `signals`
|
||||||
|
|
||||||
If `true` (default) YAP handles Signals such as `^C` (`SIGINT`).
|
If `true` (default) YAP handles Signals such as `^C`
|
||||||
|
(`SIGINT`).
|
||||||
|
|
||||||
*/
|
*/
|
||||||
YAP_FLAG(SOURCE_FLAG, "source", true, boolean, "true", NULL), /**< `source`
|
YAP_FLAG(SOURCE_FLAG, "source", true, boolean, "true", NULL), /**< `source`
|
||||||
|
|
||||||
If `true` maintain the source for all clauses. Notice that this is trivially supported for facts, and always supported for dynamic code.
|
If `true` maintain the source for all clauses. Notice that this is trivially
|
||||||
|
supported for facts, and always supported for dynamic code.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( STRICT_ISO_FLAG, "strict_iso", true, boolean, "false" , NULL ), /**< `strict_iso `
|
YAP_FLAG(STRICT_ISO_FLAG, "strict_iso", true, boolean, "false",
|
||||||
|
NULL), /**< `strict_iso `
|
||||||
|
|
||||||
If _Value_ is unbound, tell whether strict ISO compatibility mode
|
If _Value_ is unbound, tell whether strict ISO compatibility mode
|
||||||
is `on` or `off`. If _Value_ is bound to `on` set
|
is `on` or `off`. If _Value_ is bound to `on` set
|
||||||
@ -312,7 +377,10 @@ believe this mode is mostly useful when investigating how a program
|
|||||||
depends on a Prolog's platform specific features.
|
depends on a Prolog's platform specific features.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( SYSTEM_OPTIONS_FLAG, "system_options", false, ro, "[big_numbers,coroutining,depth_limit,low_level_tracer,rational_trees,threads,tabling]" , NULL ), /**< `system_options `
|
YAP_FLAG(SYSTEM_OPTIONS_FLAG, "system_options", false, ro,
|
||||||
|
"[big_numbers,coroutining,depth_limit,low_level_tracer,rational_"
|
||||||
|
"trees,threads,tabling]",
|
||||||
|
NULL), /**< `system_options `
|
||||||
|
|
||||||
This read only flag tells which options were used to compile
|
This read only flag tells which options were used to compile
|
||||||
YAP. Currently it informs whether the system supports `big_numbers`,
|
YAP. Currently it informs whether the system supports `big_numbers`,
|
||||||
@ -320,8 +388,10 @@ YAP. Currently it informs whether the system supports `big_numbers`,
|
|||||||
`or-parallelism`, `rational_trees`, `readline`, `tabling`,
|
`or-parallelism`, `rational_trees`, `readline`, `tabling`,
|
||||||
`threads`, or the `wam_profiler`.
|
`threads`, or the `wam_profiler`.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( SYSTEM_THREAD_ID_FLAG, "system_thread_id", false, ro, "0", sys_thread_id ),
|
YAP_FLAG(SYSTEM_THREAD_ID_FLAG, "system_thread_id", false, ro, "0",
|
||||||
YAP_FLAG( TABLING_MODE_FLAG, "tabling_mode", true, isatom, "[]" , NULL ), /**< `tabling_mode`
|
sys_thread_id),
|
||||||
|
YAP_FLAG(TABLING_MODE_FLAG, "tabling_mode", true, isatom, "[]",
|
||||||
|
NULL), /**< `tabling_mode`
|
||||||
|
|
||||||
Sets or reads the tabling mode for all tabled predicates. Please
|
Sets or reads the tabling mode for all tabled predicates. Please
|
||||||
(see Tabling) for the list of options.
|
(see Tabling) for the list of options.
|
||||||
@ -329,8 +399,11 @@ YAP_FLAG( TABLING_MODE_FLAG, "tabling_mode", true, isatom, "[]" , NULL ), /**<
|
|||||||
*/
|
*/
|
||||||
YAP_FLAG(THREADS_FLAG, "threads", false, ro, "MAX_THREADS", NULL),
|
YAP_FLAG(THREADS_FLAG, "threads", false, ro, "MAX_THREADS", NULL),
|
||||||
YAP_FLAG(TIMEZONE_FLAG, "timezone", false, ro, "18000", NULL),
|
YAP_FLAG(TIMEZONE_FLAG, "timezone", false, ro, "18000", NULL),
|
||||||
YAP_FLAG( TOPLEVEL_PRINT_ANON_FLAG, "toplevel_print_anon", true, boolean, "true" , NULL ),
|
YAP_FLAG(TOPLEVEL_PRINT_ANON_FLAG, "toplevel_print_anon", true, boolean,
|
||||||
YAP_FLAG( TOPLEVEL_PRINT_OPTIONS_FLAG, "toplevel_print_options", true, list_option, "[quoted(true),numbervars(true),portrayed(true)]" , NULL ), /**< `toplevel_hook `
|
"true", NULL),
|
||||||
|
YAP_FLAG(TOPLEVEL_PRINT_OPTIONS_FLAG, "toplevel_print_options", true,
|
||||||
|
list_option, "[quoted(true),numbervars(true),portrayed(true)]",
|
||||||
|
NULL), /**< `toplevel_hook `
|
||||||
|
|
||||||
If bound, set the argument to a goal to be executed before entering the
|
If bound, set the argument to a goal to be executed before entering the
|
||||||
top-level. If unbound show the current goal or `true` if none is
|
top-level. If unbound show the current goal or `true` if none is
|
||||||
@ -338,7 +411,8 @@ presented. Only the first solution is considered and the goal is not
|
|||||||
backtracked into.
|
backtracked into.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( TOPLEVEL_PROMPT_FLAG, "toplevel_prompt", true, isatom, "~m~d~l~! ?- " , mkprompt ),
|
YAP_FLAG(TOPLEVEL_PROMPT_FLAG, "toplevel_prompt", true, isatom,
|
||||||
|
"~m~d~l~! ?- ", mkprompt),
|
||||||
YAP_FLAG(TTY_CONTROL_FLAG, "tty_control", true, boolean, "true", NULL),
|
YAP_FLAG(TTY_CONTROL_FLAG, "tty_control", true, boolean, "true", NULL),
|
||||||
YAP_FLAG(UNIX_FLAG, "unix", false, ro, "true", NULL), /**< `unix`
|
YAP_FLAG(UNIX_FLAG, "unix", false, ro, "true", NULL), /**< `unix`
|
||||||
|
|
||||||
@ -346,7 +420,8 @@ YAP_FLAG( UNIX_FLAG, "unix", false, ro, "true" , NULL ), /**< `unix`
|
|||||||
running on an Unix system. Defined if the C-compiler used to compile
|
running on an Unix system. Defined if the C-compiler used to compile
|
||||||
this version of YAP either defines `__unix__` or `unix`.
|
this version of YAP either defines `__unix__` or `unix`.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( UPDATE_SEMANTICS_FLAG, "update_semantics", true, isatom, "logical" , NULL ), /**< `update_semantics `
|
YAP_FLAG(UPDATE_SEMANTICS_FLAG, "update_semantics", true, isatom, "logical",
|
||||||
|
NULL), /**< `update_semantics `
|
||||||
|
|
||||||
Define whether YAP should follow `immediate` update
|
Define whether YAP should follow `immediate` update
|
||||||
semantics, as in C-Prolog (default), `logical` update semantics,
|
semantics, as in C-Prolog (default), `logical` update semantics,
|
||||||
@ -355,17 +430,28 @@ also an intermediate mode, `logical_assert`, where dynamic
|
|||||||
procedures follow logical semantics but the internal data base still
|
procedures follow logical semantics but the internal data base still
|
||||||
follows immediate semantics.
|
follows immediate semantics.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( USER_FLAGS_FLAG, "user_flags", true, isatom, "error" , NULL ), /**< `user_flags `
|
YAP_FLAG(USER_FLAGS_FLAG, "user_flags", true, isatom, "error", NULL), /**<
|
||||||
|
`user_flags `
|
||||||
|
|
||||||
Define the behaviour of set_prolog_flag/2 if the flag is not known. Values are `silent`, `warning` and `error`. The first two create the flag on-the-fly, with `warning` printing a message. The value `error` is consistent with ISO: it raises an existence error and does not create the flag. See also `create_prolog_flag/3`. The default is`error`, and developers are encouraged to use `create_prolog_flag/3` to create flags for their library.
|
Define the behaviour of set_prolog_flag/2 if the flag is not known. Values
|
||||||
|
are `silent`, `warning` and `error`. The first two create the flag
|
||||||
|
on-the-fly, with `warning` printing a message. The value `error` is
|
||||||
|
consistent with ISO: it raises an existence error and does not create the
|
||||||
|
flag. See also `create_prolog_flag/3`. The default is`error`, and developers
|
||||||
|
are encouraged to use `create_prolog_flag/3` to create flags for their
|
||||||
|
library.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( UNKNOWN_FLAG, "unknown", true, isatom, "error" , NULL ), /**< `unknown is iso`
|
YAP_FLAG(UNKNOWN_FLAG, "unknown", true, isatom, "error",
|
||||||
|
NULL), /**< `unknown is iso`
|
||||||
|
|
||||||
Corresponds to calling the unknown/2 built-in. Possible values
|
Corresponds to calling the unknown/2 built-in. Possible values
|
||||||
are `error`, `fail`, and `warning`.
|
are `error`, `fail`, and `warning`.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( VARIABLE_NAMES_MAY_END_WITH_QUOTES_FLAG, "variable_names_may_end_with_quotes", true, boolean, "false" , NULL ),
|
YAP_FLAG(VARIABLE_NAMES_MAY_END_WITH_QUOTES_FLAG,
|
||||||
YAP_FLAG( VERBOSE_FLAG, "verbose", true, isatom, "normal" , NULL ), /**< `verbose `
|
"variable_names_may_end_with_quotes", true, boolean, "false",
|
||||||
|
NULL),
|
||||||
|
YAP_FLAG(VERBOSE_FLAG, "verbose", true, isatom, "normal",
|
||||||
|
NULL), /**< `verbose `
|
||||||
|
|
||||||
If `normal` allow printing of informational and banner messages,
|
If `normal` allow printing of informational and banner messages,
|
||||||
such as the ones that are printed when consulting. If `silent`
|
such as the ones that are printed when consulting. If `silent`
|
||||||
@ -373,39 +459,49 @@ disable printing these messages. It is `normal` by default except if
|
|||||||
YAP is booted with the `-q` or `-L` flag.
|
YAP is booted with the `-q` or `-L` flag.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( VERBOSE_AUTOLOAD_FLAG, "verbose_autoload", true, boolean, "false" , NULL ),
|
YAP_FLAG(VERBOSE_AUTOLOAD_FLAG, "verbose_autoload", true, boolean, "false",
|
||||||
YAP_FLAG( VERBOSE_FILE_SEARCH_FLAG, "verbose_file_search", true, boolean, "false" , NULL ), /**< `verbose_file_search `
|
NULL),
|
||||||
|
YAP_FLAG(VERBOSE_FILE_SEARCH_FLAG, "verbose_file_search", true, boolean,
|
||||||
|
"false", NULL), /**< `verbose_file_search `
|
||||||
|
|
||||||
If `true` allow printing of informational messages when
|
If `true` allow printing of informational messages when
|
||||||
searching for file names. If `false` disable printing these messages. It
|
searching for file names. If `false` disable printing these messages. It
|
||||||
is `false` by default except if YAP is booted with the `-L`
|
is `false` by default except if YAP is booted with the `-L`
|
||||||
flag.
|
flag.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( VERBOSE_LOAD_FLAG, "verbose_load", true, isatom, "normal" , NULL ), /**< `verbose_load `
|
YAP_FLAG(VERBOSE_LOAD_FLAG, "verbose_load", true, isatom, "normal",
|
||||||
|
NULL), /**< `verbose_load `
|
||||||
|
|
||||||
If `true` allow printing of informational messages when
|
If `true` allow printing of informational messages when
|
||||||
consulting files. If `false` disable printing these messages. It
|
consulting files. If `false` disable printing these messages. It
|
||||||
is `normal` by default except if YAP is booted with the `-L`
|
is `normal` by default except if YAP is booted with the `-L`
|
||||||
flag.
|
flag.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( VERSION_FLAG, "version", false, nat, YAP_NUMERIC_VERSION , NULL ), /**< `version_data `
|
YAP_FLAG(VERSION_FLAG, "version", false, nat, YAP_NUMERIC_VERSION,
|
||||||
|
NULL), /**< `version_data `
|
||||||
|
|
||||||
Read-only flag that unifies with a number of the form
|
Read-only flag that unifies with a number of the form
|
||||||
`_Major_ * 100000 + _Minor_ *100 + _Patch_`, where
|
`_Major_ * 100000 + _Minor_ *100 + _Patch_`, where
|
||||||
_Major_ is the major version, _Minor_ is the minor version,
|
_Major_ is the major version, _Minor_ is the minor version,
|
||||||
and _Patch_ is the patch number.
|
and _Patch_ is the patch number.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( VERSION_DATA_FLAG, "version_data", false, ro, YAP_TVERSION , NULL ), /**<
|
YAP_FLAG(VERSION_DATA_FLAG, "version_data", false, ro, YAP_TVERSION,
|
||||||
|
NULL), /**<
|
||||||
`version ` Read-only flag that returns an a compound term with the
|
`version ` Read-only flag that returns an a compound term with the
|
||||||
current version of YAP. The term will have the name `yap` and arity 4, the first argument will be the
|
current version of YAP. The term will have the name `yap` and arity 4, the first
|
||||||
major version, the second the minor version, the third the patch number, and the last one is reserved.
|
argument will be the
|
||||||
|
major version, the second the minor version, the third the patch number, and the
|
||||||
|
last one is reserved.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( VERSION_GIT_FLAG, "version_git", false, isatom, YAP_GIT_HEAD , NULL ), /**< `version_git `
|
YAP_FLAG(VERSION_GIT_FLAG, "version_git", false, isatom, YAP_GIT_HEAD,
|
||||||
|
NULL), /**< `version_git `
|
||||||
`
|
`
|
||||||
this is the unique identifier for the last commit of the current GIT HEAD, it xan be used to identify versions that differ on small (or large) updates.
|
this is the unique identifier for the last commit of the current GIT HEAD, it
|
||||||
|
xan be used to identify versions that differ on small (or large) updates.
|
||||||
*/
|
*/
|
||||||
YAP_FLAG( WRITE_ATTRIBUTES_FLAG, "write_attributes", true, isatom, "ignore" , NULL ),
|
YAP_FLAG(WRITE_ATTRIBUTES_FLAG, "write_attributes", true, isatom, "ignore",
|
||||||
|
NULL),
|
||||||
#if __WINDOWS__
|
#if __WINDOWS__
|
||||||
YAP_FLAG(WINDOWS_FLAG, "windows", false, ro, "true", NULL), /**< `windows `
|
YAP_FLAG(WINDOWS_FLAG, "windows", false, ro, "true", NULL), /**< `windows `
|
||||||
|
|
||||||
@ -413,7 +509,8 @@ YAP_FLAG( WINDOWS_FLAG, "windows", false, ro, "true" , NULL ), /**< `windows `
|
|||||||
running on an Windows machine.
|
running on an Windows machine.
|
||||||
*/
|
*/
|
||||||
#endif
|
#endif
|
||||||
YAP_FLAG( WRITE_STRINGS_FLAG, "write_strings", true, boolean, "false" , NULL ), /**< `write_strings `
|
YAP_FLAG(WRITE_STRINGS_FLAG, "write_strings", true, boolean, "false",
|
||||||
|
NULL), /**< `write_strings `
|
||||||
|
|
||||||
Writable flag telling whether the system should write lists of
|
Writable flag telling whether the system should write lists of
|
||||||
integers that are writable character codes using the list notation. It
|
integers that are writable character codes using the list notation. It
|
||||||
|
110
H/rhstruct.h
110
H/rhstruct.h
@ -2,38 +2,8 @@
|
|||||||
/* This file, rhstruct.h, was generated automatically by "yap -L misc/buildheap"
|
/* This file, rhstruct.h, was generated automatically by "yap -L misc/buildheap"
|
||||||
please do not update, update misc/HEAPFIELDS instead */
|
please do not update, update misc/HEAPFIELDS instead */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if USE_DL_MALLOC
|
#if USE_DL_MALLOC
|
||||||
|
|
||||||
|
|
||||||
#if defined(YAPOR) || defined(THREADS)
|
#if defined(YAPOR) || defined(THREADS)
|
||||||
REINIT_LOCK(DLMallocLock);
|
REINIT_LOCK(DLMallocLock);
|
||||||
#endif
|
#endif
|
||||||
@ -47,9 +17,6 @@
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(YAPOR) || defined(THREADS)
|
#if defined(YAPOR) || defined(THREADS)
|
||||||
REINIT_LOCK(FreeBlocksLock);
|
REINIT_LOCK(FreeBlocksLock);
|
||||||
REINIT_LOCK(HeapUsedLock);
|
REINIT_LOCK(HeapUsedLock);
|
||||||
@ -57,9 +24,6 @@
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if USE_THREADED_CODE
|
#if USE_THREADED_CODE
|
||||||
OP_RTABLE = OpRTableAdjust(OP_RTABLE);
|
OP_RTABLE = OpRTableAdjust(OP_RTABLE);
|
||||||
#endif
|
#endif
|
||||||
@ -74,10 +38,6 @@
|
|||||||
RETRY_USERC_OPCODE = Yap_opcode(_retry_userc);
|
RETRY_USERC_OPCODE = Yap_opcode(_retry_userc);
|
||||||
EXECUTE_CPRED_OPCODE = Yap_opcode(_execute_cpred);
|
EXECUTE_CPRED_OPCODE = Yap_opcode(_execute_cpred);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RestoreInvisibleAtoms();
|
RestoreInvisibleAtoms();
|
||||||
RestoreWideAtoms();
|
RestoreWideAtoms();
|
||||||
RestoreAtoms();
|
RestoreAtoms();
|
||||||
@ -102,29 +62,17 @@
|
|||||||
DBLOAD_MODULE = AtomTermAdjust(DBLOAD_MODULE);
|
DBLOAD_MODULE = AtomTermAdjust(DBLOAD_MODULE);
|
||||||
RANGE_MODULE = AtomTermAdjust(RANGE_MODULE);
|
RANGE_MODULE = AtomTermAdjust(RANGE_MODULE);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CurrentModules = ModEntryPtrAdjust(CurrentModules);
|
CurrentModules = ModEntryPtrAdjust(CurrentModules);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RestoreHiddenPredicates();
|
RestoreHiddenPredicates();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RestoreFlags(GLOBAL_flagCount);
|
RestoreFlags(GLOBAL_flagCount);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RestorePredHash();
|
RestorePredHash();
|
||||||
#if defined(YAPOR) || defined(THREADS)
|
#if defined(YAPOR) || defined(THREADS)
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CreepCode = PtoPredAdjust(CreepCode);
|
CreepCode = PtoPredAdjust(CreepCode);
|
||||||
UndefCode = PtoPredAdjust(UndefCode);
|
UndefCode = PtoPredAdjust(UndefCode);
|
||||||
SpyCode = PtoPredAdjust(SpyCode);
|
SpyCode = PtoPredAdjust(SpyCode);
|
||||||
@ -160,17 +108,6 @@
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
DUMMYCODE->opc = Yap_opcode(_op_fail);
|
DUMMYCODE->opc = Yap_opcode(_op_fail);
|
||||||
FAILCODE->opc = Yap_opcode(_op_fail);
|
FAILCODE->opc = Yap_opcode(_op_fail);
|
||||||
NOCODE->opc = Yap_opcode(_Nstop);
|
NOCODE->opc = Yap_opcode(_Nstop);
|
||||||
@ -193,36 +130,21 @@
|
|||||||
RestoreOtaplInst(ANSWER_RESOLUTION, _table_answer_resolution, PredFail);
|
RestoreOtaplInst(ANSWER_RESOLUTION, _table_answer_resolution, PredFail);
|
||||||
RestoreOtaplInst(COMPLETION, _table_completion, PredFail);
|
RestoreOtaplInst(COMPLETION, _table_completion, PredFail);
|
||||||
#ifdef THREADS_CONSUMER_SHARING
|
#ifdef THREADS_CONSUMER_SHARING
|
||||||
RestoreOtaplInst(ANSWER_RESOLUTION_COMPLETION,_table_answer_resolution_completion,PredFail);
|
RestoreOtaplInst(ANSWER_RESOLUTION_COMPLETION,
|
||||||
|
_table_answer_resolution_completion, PredFail);
|
||||||
#endif /* THREADS_CONSUMER_SHARING */
|
#endif /* THREADS_CONSUMER_SHARING */
|
||||||
#endif /* TABLING */
|
#endif /* TABLING */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
P_before_spy = PtoOpAdjust(P_before_spy);
|
P_before_spy = PtoOpAdjust(P_before_spy);
|
||||||
|
|
||||||
RETRY_C_RECORDEDP_CODE = PtoOpAdjust(RETRY_C_RECORDEDP_CODE);
|
RETRY_C_RECORDEDP_CODE = PtoOpAdjust(RETRY_C_RECORDEDP_CODE);
|
||||||
RETRY_C_RECORDED_K_CODE = PtoOpAdjust(RETRY_C_RECORDED_K_CODE);
|
RETRY_C_RECORDED_K_CODE = PtoOpAdjust(RETRY_C_RECORDED_K_CODE);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(YAPOR) || defined(THREADS)
|
#if defined(YAPOR) || defined(THREADS)
|
||||||
REINIT_LOCK(DBTermsListLock);
|
REINIT_LOCK(DBTermsListLock);
|
||||||
#endif
|
#endif
|
||||||
RestoreDBTermsList();
|
RestoreDBTermsList();
|
||||||
|
|
||||||
|
|
||||||
RestoreExpandList();
|
RestoreExpandList();
|
||||||
|
|
||||||
#if defined(YAPOR) || defined(THREADS)
|
#if defined(YAPOR) || defined(THREADS)
|
||||||
@ -232,27 +154,14 @@
|
|||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
RestoreUdiControlBlocks();
|
RestoreUdiControlBlocks();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RestoreIntKeys();
|
RestoreIntKeys();
|
||||||
RestoreIntLUKeys();
|
RestoreIntLUKeys();
|
||||||
RestoreIntBBKeys();
|
RestoreIntBBKeys();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RestoreDBErasedMarker();
|
RestoreDBErasedMarker();
|
||||||
RestoreLogDBErasedMarker();
|
RestoreLogDBErasedMarker();
|
||||||
|
|
||||||
@ -268,36 +177,21 @@
|
|||||||
#endif
|
#endif
|
||||||
#ifdef COROUTINING
|
#ifdef COROUTINING
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
OpList = OpListAdjust(OpList);
|
OpList = OpListAdjust(OpList);
|
||||||
|
|
||||||
RestoreForeignCode();
|
RestoreForeignCode();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RestoreYapRecords();
|
RestoreYapRecords();
|
||||||
|
|
||||||
RestoreSWIAtoms();
|
RestoreSWIAtoms();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RestoreEmptyWakeups();
|
RestoreEmptyWakeups();
|
||||||
|
|
||||||
|
|
||||||
RestoreBlobTypes();
|
RestoreBlobTypes();
|
||||||
RestoreBlobs();
|
RestoreBlobs();
|
||||||
|
|
||||||
|
|
||||||
#if defined(YAPOR) || defined(THREADS)
|
#if defined(YAPOR) || defined(THREADS)
|
||||||
REINIT_LOCK(Blobs_Lock);
|
REINIT_LOCK(Blobs_Lock);
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user