docs: static Matcher ignoreCase(Matcher matcher) {
      if (matcher instanceof CharClassMatcher) {
        CharClassMatcher m = matcher.as();
        return new CharClassMatcher(m.set(), true);
      } else if (matcher instanceof CharSeqMatcher) {
        CharSeqMatcher m = matcher.as();
        return new CharSeqMatcher(m.pattern(), true);
      } else if (matcher instanceof IndexOfMatcher) {
        IndexOfMatcher m = matcher.as();
        return new IndexOfMatcher(m.pattern(), m.next(), true);
      } else if (matcher instanceof StartsWithMatcher) {
        StartsWithMatcher m = matcher.as();
        return new StartsWithMatcher(m.pattern(), true);
      } else {
        return matcher;
      }
    }