- (macro-rules sym ... (key ...) (pat (where fender ...) .. tpl) ....)syntax
Note the special use of dots here and below: Three dots are ellipses, as usual, i.e. the pattern on the left is repeated zero or more times, two dots, zero or one time, 4 dots one ore several times.
This form can be used instead of syntax-rules in define-syntax, let-sytax and letrec-syntax, provided, you import it for-syntax. sym ... denote the injected symbols to break hygiene (if there is none, the constructed macro is hygienic). key ... and pat .... symbols are as in syntax-rules, fender ... are pairs of pattern variables and predicates, the latter applied to the former must be true for the pattern to match, and tpl .... are usually quasiquoted expressions.
And here is the syntax of define-macro