String dumpst(boolean nfapresent) {
        StringBuilder sb = new StringBuilder();
        sb.append(String.format("%s. `%c'", shortId(), op));

        if (0 != (flags & LONGER)) {
            sb.append(" longest");
        }
        if (0 != (flags & SHORTER)) {
            sb.append(" shortest");
        }
        if (0 != (flags & MIXED)) {
            sb.append(" hasmixed");
        }
        if (0 != (flags & CAP)) {
            sb.append(" hascapture");
        }
        if (0 != (flags & BACKR)) {
            sb.append(" hasbackref");
        }
        if (0 == (flags & INUSE)) {
            sb.append(" UNUSED");
        }
        if (subno != 0) {
            sb.append(String.format(" (#%d)", subno));
        }
        if (min != 1 || max != 1) {
            sb.append(String.format(" {%d,", min));
            if (max != Compiler.INFINITY) {
                sb.append(String.format("%d", max));
            }
            sb.append("}");
        }
        if (nfapresent) {
            sb.append(String.format(" %d-%d", begin.no, end.no));
        }
        if (left != null) {
            sb.append(String.format(" L:%s", left.toString()));
        }
        if (right != null) {
            sb.append(String.format(" R:%s", right.toString()));
        }

        sb.append("\n");
        if (left != null) {
            left.dumpst(nfapresent);
        }
        if (right != null) {
            right.dumpst(nfapresent);
        }

        return sb.toString();
    }
String dumpst(boolean nfapresent) {
        StringBuilder sb = new StringBuilder();
        sb.append(String.format("%s. `%c'", shortId(), op));

        if (0 != (flags & LONGER)) {
            sb.append(" longest");
        }
        if (0 != (flags & SHORTER)) {
            sb.append(" shortest");
        }
        if (0 != (flags & MIXED)) {
            sb.append(" hasmixed");
        }
        if (0 != (flags & CAP)) {
            sb.append(" hascapture");
        }
        if (0 != (flags & BACKR)) {
            sb.append(" hasbackref");
        }
        if (0 == (flags & INUSE)) {
            sb.append(" UNUSED");
        }
        if (subno != 0) {
            sb.append(String.format(" (#%d)", subno));
        }
        if (min != 1 || max != 1) {
            sb.append(String.format(" {%d,", min));
            if (max != Compiler.INFINITY) {
                sb.append(String.format("%d", max));
            }
            sb.append("}");
        }
        if (nfapresent) {
            sb.append(String.format(" %d-%d", begin.no, end.no));
        }
        if (left != null) {
            sb.append(String.format(" L:%s", left.toString()));
        }
        if (right != null) {
            sb.append(String.format(" R:%s", right.toString()));
        }

        sb.append("\n");
        if (left != null) {
            left.dumpst(nfapresent);
        }
        if (right != null) {
            right.dumpst(nfapresent);
        }

        return sb.toString();
    }
String dumpst ( boolean nfapresent ) { StringBuilder sb = new StringBuilder ( ) ; sb . append ( String . format ( "%s. `%c'" , shortId ( ) , op ) ) ; if ( 0 != ( flags & LONGER ) ) { sb . append ( " longest" ) ; } if ( 0 != ( flags & SHORTER ) ) { sb . append ( " shortest" ) ; } if ( 0 != ( flags & MIXED ) ) { sb . append ( " hasmixed" ) ; } if ( 0 != ( flags & CAP ) ) { sb . append ( " hascapture" ) ; } if ( 0 != ( flags & BACKR ) ) { sb . append ( " hasbackref" ) ; } if ( 0 == ( flags & INUSE ) ) { sb . append ( " UNUSED" ) ; } if ( subno != 0 ) { sb . append ( String . format ( " (#%d)" , subno ) ) ; } if ( min != 1 || max != 1 ) { sb . append ( String . format ( " {%d," , min ) ) ; if ( max != Compiler . INFINITY ) { sb . append ( String . format ( "%d" , max ) ) ; } sb . append ( "}" ) ; } if ( nfapresent ) { sb . append ( String . format ( " %d-%d" , begin . no , end . no ) ) ; } if ( left != null ) { sb . append ( String . format ( " L:%s" , left . toString ( ) ) ) ; } if ( right != null ) { sb . append ( String . format ( " R:%s" , right . toString ( ) ) ) ; } sb . append ( "\n" ) ; if ( left != null ) { left . dumpst ( nfapresent ) ; } if ( right != null ) { right . dumpst ( nfapresent ) ; } return sb . toString ( ) ; }
dumpst - dump a subRE tree
dumpst - dump a subRE tree