code: void outputComplementDirect(StringBuffer buf) {
        if (!surrogatesDirect && getContainsBmp() == NONE)
          buf.append("[\u0000-\uFFFF]");
        else {
          buf.append("[^");
          inClassOutputDirect(buf);
          buf.append(']');
        }
      }
docs: must not call if containsBmp == ALL && !surrogatesDirect