diff options
| author | Krasimir Angelov <kr.angelov@gmail.com> | 2017-09-06 12:38:42 +0200 |
|---|---|---|
| committer | Krasimir Angelov <kr.angelov@gmail.com> | 2017-09-06 12:38:42 +0200 |
| commit | 15d014abb825837f0fd7c9e17d5907001135faaf (patch) | |
| tree | bc569f465432042702dfaa240746b8c6db609588 /src/runtime/java/org/grammaticalframework | |
| parent | 18f2135785a71a1e93519a060d40b7ba523cf03b (diff) | |
the parser in the C runtime can now detect incomplete sentences just like the parser in the Haskell runtime. This is also reflected in all bindings.
Diffstat (limited to 'src/runtime/java/org/grammaticalframework')
| -rw-r--r-- | src/runtime/java/org/grammaticalframework/pgf/ParseError.java | 23 |
1 files changed, 19 insertions, 4 deletions
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; } } |
