summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKrasimir Angelov <kr.angelov@gmail.com>2017-08-30 08:33:16 +0200
committerKrasimir Angelov <kr.angelov@gmail.com>2017-08-30 08:33:16 +0200
commitbb5b5ca73b1ced85fff489cc1f6ed851c7367cd9 (patch)
tree2fd423d9bad1f00c2070c857a44a99b9c5c89c2c /src
parent890e03527b353a48f4e009e8c2be8893c619935a (diff)
added graphvizAbstractTree and graphvizParseTree in Java
Diffstat (limited to 'src')
-rw-r--r--src/runtime/java/jpgf.c38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/runtime/java/jpgf.c b/src/runtime/java/jpgf.c
index 6fdb1047e..2eb151836 100644
--- a/src/runtime/java/jpgf.c
+++ b/src/runtime/java/jpgf.c
@@ -371,6 +371,25 @@ Java_org_grammaticalframework_pgf_PGF_getFunctionsByCat(JNIEnv* env, jobject sel
return functions;
}
+JNIEXPORT jstring JNICALL
+Java_org_grammaticalframework_pgf_PGF_graphvizAbstractTree(JNIEnv* env, jobject self, jobject jexpr)
+{
+ GuPool* tmp_pool = gu_local_pool();
+
+ GuExn* err = gu_exn(tmp_pool);
+ GuStringBuf* sbuf = gu_new_string_buf(tmp_pool);
+ GuOut* out = gu_string_buf_out(sbuf);
+
+ pgf_graphviz_abstract_tree(get_ref(env,self),
+ gu_variant_from_ptr(l2p(get_ref(env,jexpr))),
+ out, err);
+
+ jstring jstr = gu2j_string_buf(env, sbuf);
+
+ gu_pool_free(tmp_pool);
+ return jstr;
+}
+
JNIEXPORT jstring JNICALL
Java_org_grammaticalframework_pgf_Concr_getName(JNIEnv* env, jobject self)
{
@@ -1198,6 +1217,25 @@ Java_org_grammaticalframework_pgf_Concr_getPrintName(JNIEnv* env, jobject self,
return jname;
}
+JNIEXPORT jstring JNICALL
+Java_org_grammaticalframework_pgf_Concr_graphvizParseTree(JNIEnv* env, jobject self, jobject jexpr)
+{
+ GuPool* tmp_pool = gu_local_pool();
+
+ GuExn* err = gu_exn(tmp_pool);
+ GuStringBuf* sbuf = gu_new_string_buf(tmp_pool);
+ GuOut* out = gu_string_buf_out(sbuf);
+
+ pgf_graphviz_parse_tree(get_ref(env,self),
+ gu_variant_from_ptr(l2p(get_ref(env,jexpr))),
+ out, err);
+
+ jstring jstr = gu2j_string_buf(env, sbuf);
+
+ gu_pool_free(tmp_pool);
+ return jstr;
+}
+
JNIEXPORT jlong JNICALL
Java_org_grammaticalframework_pgf_Pool_alloc(JNIEnv* env, jclass clazz)
{