void addSourceTargetSet(UnicodeSet filter, UnicodeSet sourceSet, UnicodeSet targetSet) {
        UnicodeSet currentFilter = new UnicodeSet(filter);
        UnicodeSet revisiting = new UnicodeSet();
        int count = ruleVector.size();
        for (int i=0; i<count; ++i) {
            TransliterationRule r = ruleVector.get(i);
            r.addSourceTargetSet(currentFilter, sourceSet, targetSet, revisiting.clear());
            currentFilter.addAll(revisiting);
        }
    }
void addSourceTargetSet ( UnicodeSet filter , UnicodeSet sourceSet , UnicodeSet targetSet ) { UnicodeSet currentFilter = new UnicodeSet ( filter ) ; UnicodeSet revisiting = new UnicodeSet ( ) ; int count = ruleVector . size ( ) ; for ( int i = 0 ; i < count ; ++ i ) { TransliterationRule r = ruleVector . get ( i ) ; r . addSourceTargetSet ( currentFilter , sourceSet , targetSet , revisiting . clear ( ) ) ; currentFilter . addAll ( revisiting ) ; } }
TODO Merge into r.addSourceTargetSet, to avoid duplicate testing