1 package edu.berkeley.sbp.misc;
2 import edu.berkeley.sbp.*;
3 import edu.berkeley.sbp.util.*;
6 import java.lang.reflect.*;
8 public abstract class StringWalker extends TreeWalker<String> {
9 public void walk(String tag) { }
10 public Object walk(Tree<String> tree) {
11 Object o = tree.head();
12 if (!(o instanceof String)) o = null; /* FIXME */
14 return super.walk(tree);
16 public Object walk(String tag, Object[] tokens) {
17 if (tokens.length==0) return tag;
18 if (tag==null) return null;
19 throw new Error("walker error: couldn't walk tag " + tag + " with " + tokens.length + " children");