diff options
Diffstat (limited to 'src/runtime/java')
| -rw-r--r-- | src/runtime/java/jpgf.c | 13 | ||||
| -rw-r--r-- | src/runtime/java/org/grammaticalframework/pgf/Concr.java | 4 |
2 files changed, 17 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) { diff --git a/src/runtime/java/org/grammaticalframework/pgf/Concr.java b/src/runtime/java/org/grammaticalframework/pgf/Concr.java index e6cd958bb..af814b4a9 100644 --- a/src/runtime/java/org/grammaticalframework/pgf/Concr.java +++ b/src/runtime/java/org/grammaticalframework/pgf/Concr.java @@ -79,6 +79,10 @@ public class Concr { */ public native boolean hasLinearization(String fun); + /** returns the print name for that function or category. + */ + public native String getPrintName(String id); + /** If the concrete syntaxes in the grammar are stored in external * files then this method can be used to load the current syntax * in memory. |
