summaryrefslogtreecommitdiff
path: root/src/runtime/java/jpgf.c
diff options
context:
space:
mode:
authorkrasimir <krasimir@chalmers.se>2017-05-11 09:11:30 +0000
committerkrasimir <krasimir@chalmers.se>2017-05-11 09:11:30 +0000
commita839bdc687b19a35b238192d1e5d3fde5302af42 (patch)
tree274bad20d53bcf08dc8e3aaa416896ab03835c9c /src/runtime/java/jpgf.c
parent2cf98147e6e7ba077cd002ba97a5834a88fa3a00 (diff)
bugfix for print names in the C runtime and expose the functionality from Java
Diffstat (limited to 'src/runtime/java/jpgf.c')
-rw-r--r--src/runtime/java/jpgf.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/runtime/java/jpgf.c b/src/runtime/java/jpgf.c
index 84b2ebb4e..9a3c528ec 100644
--- a/src/runtime/java/jpgf.c
+++ b/src/runtime/java/jpgf.c
@@ -1146,6 +1146,19 @@ Java_org_grammaticalframework_pgf_Concr_hasLinearization(JNIEnv* env, jobject se
return res;
}
+JNIEXPORT jstring JNICALL
+Java_org_grammaticalframework_pgf_Concr_getPrintName(JNIEnv* env, jobject self, jstring jid)
+{
+ PgfConcr* concr = get_ref(env, self);
+ GuPool* tmp_pool = gu_local_pool();
+ PgfCId id = j2gu_string(env, jid, tmp_pool);
+ GuString name = pgf_print_name(concr, id);
+ jstring jname = (name == NULL) ? NULL : gu2j_string(env, name);
+ gu_pool_free(tmp_pool);
+
+ return jname;
+}
+
JNIEXPORT jlong JNICALL
Java_org_grammaticalframework_pgf_Pool_alloc(JNIEnv* env, jclass clazz)
{