Creates a rule that succeeds if the original rule succeeds, but returns the original input.
Creates a rule that succeeds only if the original rule would fail on the given context.
(inRule: StringAdd).self
(inRule: StringFormat).self
(inRule: ArrowAssoc[InRule[In, Out, A, X]]).x
(Since version 2.10.0) Use leftOfArrow
instead
(inRule: Ensuring[InRule[In, Out, A, X]]).x
(Since version 2.10.0) Use resultOfEnsuring
instead
A workaround for the difficulties of dealing with a contravariant 'In' parameter type...