code: public void show(final StringBuffer sb) {
      int start;
      start = this.span.getStart();
      if (!this.type.equals(ShiftReduceParser.TOK_NODE)) {
        sb.append("(");
        sb.append(this.type).append(" ");
        // System.out.print(label+" ");
        // System.out.print(head+" ");
        // System.out.print(df.format(prob)+" ");
      }
      for (Parse c : this.parts) {
        final Span s = c.span;
        if (start < s.getStart()) {
          // System.out.println("pre "+start+" "+s.getStart());
          sb.append(encodeToken(this.text.substring(start, s.getStart())));
        }
        c.show(sb);
        start = s.getEnd();
      }
      if (start < this.span.getEnd()) {
        sb.append(encodeToken(this.text.substring(start, this.span.getEnd())));
      }
      if (!this.type.equals(ShiftReduceParser.TOK_NODE)) {
        sb.append(")");
      }
    }
docs: Appends the specified string buffer with a string representation of this
  parse.
  
  @param sb
  A string buffer into which the parse string can be appended.