From 8f728962a5d83911254a72fc78c9a0c2f97468cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADtor=20Santos=20Costa?= Date: Wed, 1 Feb 2012 19:26:28 +0000 Subject: [PATCH] YAP_ExportTerm and YAP_ImportTerm from buffer (first cut).w --- C/c_interface.c | 12 ++++++++++++ include/YapInterface.h | 4 ++++ 2 files changed, 16 insertions(+) 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