Documentation

Lean.Elab.RecAppSyntax

We store the syntax at recursive applications to be able to generate better error messages when performing well-founded and structural recursion.

We additionally store the source position as an extra key, so that two recursive applications that are structurally identical as Syntax but originate from different source positions still produce distinct MData. Otherwise hashconsing or simplification can merge them and attribute an error to the wrong call site (issue #13444).

Instances For

    Retrieve (if available) the syntax object attached to a recursive application.

    Instances For

      Checks if the MData is for a recursive application.

      Instances For

        Return true if getRecAppSyntax? e is a some.

        Instances For