extend C-interface to support b-prolog like stuff

This commit is contained in:
Vítor Santos Costa
2011-11-03 07:52:52 +09:00
parent fc2a50b67e
commit 9f2b0c7e70
2 changed files with 68 additions and 2 deletions

View File

@@ -109,6 +109,9 @@ extern X_API YAP_Bool PROTO(YAP_IsRationalTerm,(YAP_Term));
/* YAP_Bool IsFloatTerm(YAP_Term) */
extern X_API YAP_Bool PROTO(YAP_IsFloatTerm,(YAP_Term));
/* YAP_Bool IsNumberTerm(YAP_Term) */
extern X_API YAP_Bool PROTO(YAP_IsNumberTerm,(YAP_Term));
/* YAP_Bool IsDbRefTerm(YAP_Term) */
extern X_API YAP_Bool PROTO(YAP_IsDbRefTerm,(YAP_Term));
@@ -121,6 +124,9 @@ extern X_API YAP_Bool PROTO(YAP_IsPairTerm,(YAP_Term));
/* YAP_Bool IsApplTerm(YAP_Term) */
extern X_API YAP_Bool PROTO(YAP_IsApplTerm,(YAP_Term));
/* YAP_Bool IsCompoundTerm(YAP_Term) */
extern X_API YAP_Bool PROTO(YAP_IsCompoundTerm,(YAP_Term));
/* Term MkIntTerm(YAP_Int) */
extern X_API YAP_Term PROTO(YAP_MkIntTerm,(YAP_Int));
@@ -237,6 +243,9 @@ extern X_API void PROTO(YAP_UserCPredicateWithArgs,(CONST char *, YAP_Bool (*)(v
arity, int extra) */
extern X_API void PROTO(YAP_UserBackCPredicate,(CONST char *, YAP_Bool (*)(void), YAP_Bool (*)(void), YAP_Arity, unsigned int));
/* YAP_Int YAP_ListLength(YAP_Term t) */
extern X_API YAP_Int PROTO(YAP_ListLength,(YAP_Term));
/* void UserBackCPredicate(char *name, int *init(), int *cont(), int *cut(), int
arity, int extra) */
extern X_API void PROTO(YAP_UserBackCutCPredicate,(CONST char *, YAP_Bool (*)(void), YAP_Bool (*)(void), YAP_Bool (*)(void), YAP_Arity, unsigned int));
@@ -310,7 +319,7 @@ extern X_API void PROTO(YAP_Error,(int, YAP_Term, CONST char *, ...));
extern X_API YAP_Term PROTO(YAP_Read,(void *));
/* void YAP_Write(YAP_Term,void (*)(int),int) */
extern X_API void PROTO(YAP_Write,(YAP_Term,void (*)(int),int));
extern X_API void PROTO(YAP_Write,(YAP_Term,void *,int));
/* void YAP_WriteBufffer(YAP_Term,char *,unsgined int,int) */
extern X_API void PROTO(YAP_WriteBuffer,(YAP_Term,char *,unsigned int,int));
@@ -534,6 +543,9 @@ extern X_API int PROTO(YAP_Erase,(void *));
/* term utilities */
extern X_API int PROTO(YAP_Variant,(YAP_Term,YAP_Term));
extern X_API YAP_Int PROTO(YAP_NumberVars,(YAP_Term,YAP_Int));
extern X_API YAP_Term PROTO(YAP_UnNumberVars,(YAP_Term));
extern X_API int PROTO(YAP_IsNumberedVariable,(YAP_Term));
extern X_API int PROTO(YAP_Unifiable,(YAP_Term,YAP_Term));
extern X_API int PROTO(YAP_ExactlyEqual,(YAP_Term,YAP_Term));
extern X_API YAP_Int PROTO(YAP_TermHash,(YAP_Term, YAP_Int, YAP_Int, int));