void printRangeGroups() {
        RangeDescriptor       rlRange;
        RangeDescriptor       tRange;
        int                    i;
        int                    lastPrintedGroupNum = 0;

        System.out.print("\nRanges grouped by Unicode Set Membership...\n");
        for (rlRange = fRangeList; rlRange!=null; rlRange=rlRange.fNext) {
            int groupNum = rlRange.fNum & 0xbfff;
            if (groupNum > lastPrintedGroupNum) {
                lastPrintedGroupNum = groupNum;
                if (groupNum<10) {System.out.print(" ");}
                System.out.print(groupNum + " ");

                if ((rlRange.fNum & 0x4000) != 0) { System.out.print(" <DICT> ");}

                for (i=0; i<rlRange.fIncludesSets.size(); i++) {
                    RBBINode       usetNode    = rlRange.fIncludesSets.get(i);
                    String         setName = "anon";
                    RBBINode       setRef = usetNode.fParent;
                    if (setRef != null) {
                        RBBINode varRef = setRef.fParent;
                        if (varRef != null  &&  varRef.fType == RBBINode.varRef) {
                            setName = varRef.fText;
                        }
                    }
                    System.out.print(setName); System.out.print(" ");
                }

                i = 0;
                for (tRange = rlRange; tRange != null; tRange = tRange.fNext) {
                    if (tRange.fNum == rlRange.fNum) {
                        if (i++ % 5 == 0) {
                            System.out.print("\n    ");
                        }
                        RBBINode.printHex(tRange.fStartChar, -1);
                        System.out.print("-");
                        RBBINode.printHex(tRange.fEndChar, 0);
                    }
                }
                System.out.print("\n");
            }
        }
        System.out.print("\n");
    }
void printRangeGroups ( ) { RangeDescriptor rlRange ; RangeDescriptor tRange ; int i ; int lastPrintedGroupNum = 0 ; System . out . print ( "\nRanges grouped by Unicode Set Membership...\n" ) ; for ( rlRange = fRangeList ; rlRange != null ; rlRange = rlRange . fNext ) { int groupNum = rlRange . fNum & 0xbfff ; if ( groupNum > lastPrintedGroupNum ) { lastPrintedGroupNum = groupNum ; if ( groupNum < 10 ) { System . out . print ( " " ) ; } System . out . print ( groupNum + " " ) ; if ( ( rlRange . fNum & 0x4000 ) != 0 ) { System . out . print ( " <DICT> " ) ; } for ( i = 0 ; i < rlRange . fIncludesSets . size ( ) ; i ++ ) { RBBINode usetNode = rlRange . fIncludesSets . get ( i ) ; String setName = "anon" ; RBBINode setRef = usetNode . fParent ; if ( setRef != null ) { RBBINode varRef = setRef . fParent ; if ( varRef != null && varRef . fType == RBBINode . varRef ) { setName = varRef . fText ; } } System . out . print ( setName ) ; System . out . print ( " " ) ; } i = 0 ; for ( tRange = rlRange ; tRange != null ; tRange = tRange . fNext ) { if ( tRange . fNum == rlRange . fNum ) { if ( i ++ % 5 == 0 ) { System . out . print ( "\n    " ) ; } RBBINode . printHex ( tRange . fStartChar , - 1 ) ; System . out . print ( "-" ) ; RBBINode . printHex ( tRange . fEndChar , 0 ) ; } } System . out . print ( "\n" ) ; } } System . out . print ( "\n" ) ; }
/CLOVER:OFF