To handle delaborating notations that are functions that can be applied to arguments, extracts the core function application delaborator as a separate function that accepts the number of arguments to process and a delaborator to apply to the "head" of the expression. Defines `withOverApp`, which has the same interface as the combinator of the same name from std4, but it uses this core function application delaborator. Uses `withOverApp` to improve a number of application delaborators, notably projections. This means Mathlib can stop using `pp_dot` for structure fields that have function types. Incidentally fixes `getParamKinds` to specialize default values to use supplied arguments, which impacts how default arguments are delaborated. --------- Co-authored-by: Sebastian Ullrich <sebasti@nullri.ch>
8 lines
161 B
Text
8 lines
161 B
Text
sorryAtError.lean:13:46-13:47: error: application type mismatch
|
|
ty.ty Γ
|
|
argument
|
|
Γ
|
|
has type
|
|
x.ty.ctx : Type
|
|
but is expected to have type
|
|
ty.ctx : Type
|