Beispiel: Baum-Besucher

Benutzung des Besuchers: Anzahl der Blätter:
class Trees {
  static <K> int leaves (Tree<K> t) {
    return t.receive(new Tree.Visitor<K,Integer>() {
      public Integer branch
           (Integer left, Integer right) {
        return left + right;
      }
      public Integer leaf(K key) {
        return 1;
      }
    });
  }
}



Johannes Waldmann 2011-06-29