docs: public static AsciiSet fromPattern(String pattern) {
      final boolean[] members = new boolean[128];
      final int n = pattern.length();
      for (int i = 0; i < n; ++i) {
        final char c = pattern.charAt(i);
        if (c >= members.length) {
          throw new IllegalArgumentException("invalid pattern, '" + c + "' is not ascii");
        }
  
        final boolean isStartOrEnd = i == 0 || i == n - 1;
        if (isStartOrEnd || c != '-') {
          members[c] = true;
        } else {
          final char s = pattern.charAt(i - 1);
          final char e = pattern.charAt(i + 1);
          for (char v = s; v <= e; ++v) {
            members[v] = true;
          }
        }
      }
      return new AsciiSet(members);
    }