summaryrefslogtreecommitdiff
path: root/src/runtime/java/org
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/java/org')
-rw-r--r--src/runtime/java/org/grammaticalframework/pgf/BIND.java8
-rw-r--r--src/runtime/java/org/grammaticalframework/pgf/Expr.java3
-rw-r--r--src/runtime/java/org/grammaticalframework/pgf/ParseError.java23
-rw-r--r--src/runtime/java/org/grammaticalframework/pgf/TokenProb.java11
4 files changed, 39 insertions, 6 deletions
diff --git a/src/runtime/java/org/grammaticalframework/pgf/BIND.java b/src/runtime/java/org/grammaticalframework/pgf/BIND.java
new file mode 100644
index 000000000..5cbbe4ce5
--- /dev/null
+++ b/src/runtime/java/org/grammaticalframework/pgf/BIND.java
@@ -0,0 +1,8 @@
+package org.grammaticalframework.pgf;
+
+public class BIND {
+ private BIND() {
+ }
+
+ public static final BIND instance = new BIND();
+}
diff --git a/src/runtime/java/org/grammaticalframework/pgf/Expr.java b/src/runtime/java/org/grammaticalframework/pgf/Expr.java
index 40655cbcb..db0876bf8 100644
--- a/src/runtime/java/org/grammaticalframework/pgf/Expr.java
+++ b/src/runtime/java/org/grammaticalframework/pgf/Expr.java
@@ -108,6 +108,9 @@ public class Expr implements Serializable {
return showExpr(ref);
}
+ /** Computes the number of functions in the expression */
+ public native int size();
+
/** Reads a string in the GF syntax for abstract expressions
* and returns an object representing the expression. */
public static native Expr readExpr(String s) throws PGFError;
diff --git a/src/runtime/java/org/grammaticalframework/pgf/ParseError.java b/src/runtime/java/org/grammaticalframework/pgf/ParseError.java
index 7fd332708..8b3f51ae2 100644
--- a/src/runtime/java/org/grammaticalframework/pgf/ParseError.java
+++ b/src/runtime/java/org/grammaticalframework/pgf/ParseError.java
@@ -4,11 +4,26 @@ package org.grammaticalframework.pgf;
public class ParseError extends Exception {
private static final long serialVersionUID = -6086991674218306569L;
- public ParseError(String token) {
- super(token);
+ private String token;
+ private int offset;
+ private boolean incomplete;
+
+ public ParseError(String token, int offset, boolean incomplete) {
+ super(incomplete ? "The sentence is incomplete" : "Unexpected token: \""+token+"\"");
+ this.token = token;
+ this.offset = offset;
+ this.incomplete = incomplete;
}
-
+
public String getToken() {
- return getMessage();
+ return token;
+ }
+
+ public int getOffset() {
+ return offset;
+ }
+
+ public boolean isIncomplete() {
+ return incomplete;
}
}
diff --git a/src/runtime/java/org/grammaticalframework/pgf/TokenProb.java b/src/runtime/java/org/grammaticalframework/pgf/TokenProb.java
index 2c4ce4447..36db54273 100644
--- a/src/runtime/java/org/grammaticalframework/pgf/TokenProb.java
+++ b/src/runtime/java/org/grammaticalframework/pgf/TokenProb.java
@@ -4,12 +4,14 @@ package org.grammaticalframework.pgf;
public class TokenProb {
private String tok;
private String cat;
+ private String fun;
private double prob;
- public TokenProb(double prob, String tok, String cat) {
+ public TokenProb(double prob, String tok, String cat, String fun) {
this.prob = prob;
this.tok = tok;
- this.cat = cat;
+ this.cat = cat;
+ this.fun = fun;
}
/** Returns the negative logarithmic probability. */
@@ -26,4 +28,9 @@ public class TokenProb {
public String getCategory() {
return cat;
}
+
+ /** Returns the function from which this word was predicted. */
+ public String getFunction() {
+ return fun;
+ }
}