YAP_SetYAP_Flag

This commit is contained in:
Vitor Santos Costa
2010-08-30 22:25:56 -05:00
parent 8f49db480d
commit 8b9cf7dc2a
5 changed files with 56 additions and 2 deletions

View File

@@ -519,6 +519,7 @@ X_API int STD_PROTO(YAP_Erase,(void *));
X_API int STD_PROTO(YAP_Variant,(Term, Term));
X_API int STD_PROTO(YAP_ExactlyEqual,(Term, Term));
X_API Int STD_PROTO(YAP_TermHash,(Term, Int, Int, int));
X_API int STD_PROTO(YAP_SetYAPFlag,(yap_flag_t, int));
static int (*do_getf)(void);
@@ -3100,4 +3101,28 @@ YAP_SlotsToArgs(int n, Int slot)
}
X_API int
YAP_SetYAPFlag(yap_flag_t flag, int val)
{
switch (flag) {
case YAPC_ENABLE_GC:
if (val) {
Yap_PutValue(AtomGc, MkAtomTerm(AtomTrue));
} else {
Yap_PutValue(AtomGc, TermNil);
}
return TRUE;
case YAPC_ENABLE_AGC:
if (val) {
AGcThreshold = 10000;
} else {
AGcThreshold = 0;
}
return TRUE;
default:
return FALSE;
}
}