diff --git a/C/c_interface.c b/C/c_interface.c index e6283efce..b209c4c77 100644 --- a/C/c_interface.c +++ b/C/c_interface.c @@ -555,6 +555,8 @@ X_API Term STD_PROTO(YAP_NewOpaqueObject,(int, size_t)); X_API void *STD_PROTO(YAP_OpaqueObjectFromTerm,(Term)); X_API int STD_PROTO(YAP_Argv,(char *** argvp)); X_API YAP_tag_t STD_PROTO(YAP_TagOfTerm,(Term)); +X_API int STD_PROTO(YAP_ExportTerm,(Term, char *, size_t)); +X_API Term STD_PROTO(YAP_ImportTerm,(char *)); static int dogc( USES_REGS1 ) @@ -3987,3 +3989,13 @@ YAP_IsNumberedVariable(Term t) { IsIntegerTerm(ArgOfTerm(1,t)); } +X_API int +YAP_ExportTerm(Term inp, char * buf, size_t len) { + return Yap_ExportTerm(inp, buf, len); +} + +X_API Term +YAP_ImportTerm(char * buf) { + return Yap_ImportTerm(buf); +} + diff --git a/include/YapInterface.h b/include/YapInterface.h index 569f87550..4e8261d04 100644 --- a/include/YapInterface.h +++ b/include/YapInterface.h @@ -589,6 +589,10 @@ extern X_API int *PROTO(YAP_Argv,(char ***)); extern X_API YAP_tag_t PROTO(YAP_TagOfTerm,(YAP_Term)); +extern X_API int PROTO(YAP_ExportTerm,(YAP_Term, char *, size_t)); + +extern X_API YAP_Term PROTO(YAP_ImportTerm,(char *)); + #define YAP_InitCPred(N,A,F) YAP_UserCPredicate(N,F,A) __END_DECLS