X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2FParser.java;h=bbcb032c932c12977b975037b8cc1891574c3273;hb=225993309e6183afa9a88fc13d39df56be54b992;hp=1ea89ada928d696d03b8e3857411795c0f3ef505;hpb=743754674298bb8a3303bdffd3b5c5cc0de1b158;p=sbp.git diff --git a/src/edu/berkeley/sbp/Parser.java b/src/edu/berkeley/sbp/Parser.java index 1ea89ad..bbcb032 100644 --- a/src/edu/berkeley/sbp/Parser.java +++ b/src/edu/berkeley/sbp/Parser.java @@ -21,14 +21,14 @@ public abstract class Parser { public Forest parse(Input input) throws IOException, ParseFailed { GSS gss = new GSS(); Input.Location loc = input.getLocation(); - GSS.Phase current = gss.new Phase(null, this, null, input.next(1, 0, 0), loc, null); + GSS.Phase current = gss.new Phase(null, this, null, input.next(), loc, null); current.newNode(null, Forest.leaf(null, null, null), pt.start, true); int count = 1; for(;;) { loc = input.getLocation(); current.reduce(); Forest forest = current.token==null ? null : shiftToken((Tok)current.token, loc); - GSS.Phase next = gss.new Phase(current, this, current, input.next(count, gss.resets, gss.waits), loc, forest); + GSS.Phase next = gss.new Phase(current, this, current, input.next(), loc, forest); count = next.size(); if (current.isDone()) return (Forest)gss.finalResult; current = next; @@ -38,7 +38,7 @@ public abstract class Parser { // Table ////////////////////////////////////////////////////////////////////////////// /** an SLR(1) parse table which may contain conflicts */ - public static class Table extends Walk.Cache { + static class Table extends Walk.Cache { public final Walk.Cache cache = this; @@ -117,7 +117,7 @@ public abstract class Parser { /** a single state in the LR table and the transitions possible from it */ - public class State implements Comparable>, IntegerMappable, Iterable { + class State implements Comparable>, IntegerMappable, Iterable { public final int idx = master_state_idx++; private final HashSet hs;