/** ^(A B C): emit create A, create B, add child, ... */
 protected void simulateTreeConstruction(Object t) {
   dbg.createNode(t);
   int n = adaptor.getChildCount(t);
   for (int i = 0; i < n; i++) {
     Object child = adaptor.getChild(t, i);
     simulateTreeConstruction(child);
     dbg.addChild(t, child);
   }
 }
 public int getChildCount(Object t) {
   return adaptor.getChildCount(t);
 }