captures the scope and the value of the bindings in patterns important *when* the substitution happens (can't accumulate and do at once after the full matcher has been constructed)
(treeMaker: StringAdd).self
(treeMaker: StringFormat).self
(treeMaker: ArrowAssoc[TreeMaker]).x
(Since version 2.10.0) Use leftOfArrow
instead
(treeMaker: Ensuring[TreeMaker]).x
(Since version 2.10.0) Use resultOfEnsuring
instead