package example;
public class TreeSizeVisitor implements TreeVisitor{
public Integer eval(Branch t){
return 1+eval(t.getLeft())+eval(t.getRight());
}
public Integer eval(Empty t){return 0;}
public Integer eval(Tree t){
throw new RuntimeException("unmatched pattern: "+t);
}
}