sclass MatchDoubleRestAttractor > Attractor { S pattern; new Matches m; *() {} *(S *pattern) {} *(S *pattern, Runnable *action) {} public bool matches(S s) { ret matchDoubleRest(pattern, s, m); } }