sclass CombinedStringMatcher extends StringMatcher { new L matchers; *() {} *(StringMatcher... matchers) { addAll(this.matchers, matchers); } bool match(S pat, S input, SS matches) { for (StringMatcher m : matchers) if (m.match(pat, input, matches)) true; false; } }