code: private final char parseSet(String rule, ParsePosition pos) {
          UnicodeSet set = new UnicodeSet(rule, pos, parseData);
          if (variableNext >= variableLimit) {
              throw new RuntimeException("Private use variables exhausted");
          }
          set.compact();
          return generateStandInFor(set);
      }
docs: Parse a UnicodeSet out, store it, and return the stand-in character
  used to represent it.