On Sunday, 3 January 2021 at 18:26:44 UTC, Per Nordlöw wrote:
I've triedalias Matcher = Match function(Matcher[] matchers...); but it errors as recursive alias declaration
The closest thing can I think of is: ```alias matcherSignature(T:matcherSignature!T) = T (T[] matchers...);
``` I think we would require proper singleton types to model this as: ``` matcherSignature(matcherSignature.type[] matcherSignatures ...) ```