diff options
Diffstat (limited to 'src/runtime/java/org')
7 files changed, 102 insertions, 31 deletions
diff --git a/src/runtime/java/org/grammaticalframework/PGF.java b/src/runtime/java/org/grammaticalframework/PGF.java deleted file mode 100644 index 6ff0a21a4..000000000 --- a/src/runtime/java/org/grammaticalframework/PGF.java +++ /dev/null @@ -1,31 +0,0 @@ -package org.grammaticalframework; - -public class PGF { - public static native PGF readPGF(String path); - - public void close() { - if (pool != 0) { - free(pool); - pool = 0; - gr = 0; - } - } - - private static native void free(long pool); - - private long pool; - private long gr; - - private PGF(long pool, long gr) { - this.pool = pool; - this.gr = gr; - } - - protected void finalize () throws Throwable { - close(); - } - - static { - System.loadLibrary("jpgf"); - } -} diff --git a/src/runtime/java/org/grammaticalframework/pgf/Concr.java b/src/runtime/java/org/grammaticalframework/pgf/Concr.java new file mode 100644 index 000000000..095c009ba --- /dev/null +++ b/src/runtime/java/org/grammaticalframework/pgf/Concr.java @@ -0,0 +1,17 @@ +package org.grammaticalframework.pgf; + +public class Concr { + + public native String getName(); + + ////////////////////////////////////////////////////////////////// + // private stuff + + private PGF gr; + private long concr; + + private Concr(PGF gr, long concr) { + this.gr = gr; + this.concr = concr; + } +} diff --git a/src/runtime/java/org/grammaticalframework/pgf/Expr.java b/src/runtime/java/org/grammaticalframework/pgf/Expr.java new file mode 100644 index 000000000..6401ec6b9 --- /dev/null +++ b/src/runtime/java/org/grammaticalframework/pgf/Expr.java @@ -0,0 +1,4 @@ +package org.grammaticalframework.pgf; + +public class Expr { +} diff --git a/src/runtime/java/org/grammaticalframework/pgf/ExprProb.java b/src/runtime/java/org/grammaticalframework/pgf/ExprProb.java new file mode 100644 index 000000000..fcfbdbc74 --- /dev/null +++ b/src/runtime/java/org/grammaticalframework/pgf/ExprProb.java @@ -0,0 +1,19 @@ +package org.grammaticalframework.pgf; + +public class ExprProb { + private Expr expr; + private double prob; + + public ExprProb(Expr expr, double prob) { + this.expr = expr; + this.prob = prob; + } + + public Expr getExpr() { + return expr; + } + + public double getProb() { + return prob; + } +} diff --git a/src/runtime/java/org/grammaticalframework/pgf/PGF.java b/src/runtime/java/org/grammaticalframework/pgf/PGF.java new file mode 100644 index 000000000..35ff8d044 --- /dev/null +++ b/src/runtime/java/org/grammaticalframework/pgf/PGF.java @@ -0,0 +1,51 @@ +package org.grammaticalframework.pgf; + +import java.io.*; +import java.util.*; + +public class PGF { + public static native PGF readPGF(String path) throws FileNotFoundException; + + public native String getAbstractName(); + + public native Map<String,Concr> getLanguages(); + + public native List<String> getCategories(); + + public native String getStartCat(); + + public native List<String> getFunctions(); + + public native List<String> getFunctionsByCat(String cat); + + public native Type getFunctionType(String fun); + + public native Iterator<ExprProb> generate(Type type); + + public native Expr compute(Expr expr); + + ////////////////////////////////////////////////////////////////// + // private stuff + + private static native void free(long pool); + + private long pool; + private long gr; + + private PGF(long pool, long gr) { + this.pool = pool; + this.gr = gr; + } + + protected void finalize () throws Throwable { + if (pool != 0) { + free(pool); + pool = 0; + gr = 0; + } + } + + static { + System.loadLibrary("jpgf"); + } +} diff --git a/src/runtime/java/org/grammaticalframework/pgf/PGFError.java b/src/runtime/java/org/grammaticalframework/pgf/PGFError.java new file mode 100644 index 000000000..fb55349c4 --- /dev/null +++ b/src/runtime/java/org/grammaticalframework/pgf/PGFError.java @@ -0,0 +1,7 @@ +package org.grammaticalframework.pgf; + +public class PGFError extends RuntimeException { + public PGFError(String message) { + super(message); + } +} diff --git a/src/runtime/java/org/grammaticalframework/pgf/Type.java b/src/runtime/java/org/grammaticalframework/pgf/Type.java new file mode 100644 index 000000000..061771b71 --- /dev/null +++ b/src/runtime/java/org/grammaticalframework/pgf/Type.java @@ -0,0 +1,4 @@ +package org.grammaticalframework.pgf; + +public class Type { +} |
