X-Git-Url: http://git.megacz.com/?p=sbp.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2FElement.java;h=7e140f9a2f93b093a9ec2485cdd510d42aee3e9e;hp=b199a23ca52f943964a5afb2a9002e94f42a54d4;hb=96a2822a729e563a64173f22dc184bc972a200ef;hpb=0a0227b9180534d2a431f3d6e08a398bde2244c4 diff --git a/src/edu/berkeley/sbp/Element.java b/src/edu/berkeley/sbp/Element.java index b199a23..7e140f9 100644 --- a/src/edu/berkeley/sbp/Element.java +++ b/src/edu/berkeley/sbp/Element.java @@ -10,9 +10,8 @@ import java.lang.ref.*; /** the root superclass for all components of the grammar (terminals, nonterminals, literals, etc) */ public abstract class Element { - /** add all positions reachable from the start of this Element to @rp */ - abstract void reachable(HashSet rp); - + abstract Topology toAtom(); + public Topology noFollow() { return null; } Forest epsilonForm() { throw new Error("no epsilon form: " + this); } final boolean possiblyEpsilon(Walk.Cache cache) { Boolean ret = cache==null ? null : cache.possiblyEpsilon.get(this);