Leonardo de Moura
dca9278e09
feat: add elabModuleDoc
2021-08-06 13:45:36 -07:00
Leonardo de Moura
1be41f2adb
chore: fix stdlib
2021-08-06 12:58:58 -07:00
Leonardo de Moura
76cc99179d
fix: fixes #370
2021-08-06 12:52:23 -07:00
Leonardo de Moura
4dbb3e6db1
fix: add workaround to prevent code explosion at deriving for FromJson
...
fixes #569
2021-08-05 06:58:07 -07:00
Wojciech Nawrocki
3bbf19a404
feat: FromToJson for nested inductives
2021-08-05 06:27:57 -07:00
Leonardo de Moura
aff28f51cd
fix: fixes #604
2021-08-04 17:19:17 -07:00
Leonardo de Moura
0869bbe558
fix: missig registerMVarErrorImplicitArgInfo for postponed instance mvars
2021-08-04 16:58:00 -07:00
Leonardo de Moura
91b60cbb22
chore: indentation
2021-08-04 16:50:57 -07:00
Leonardo de Moura
61cdf93750
fix: missing registerMVarErrorImplicitArgInfo
2021-08-04 16:09:18 -07:00
Leonardo de Moura
4ca7345956
refactor: remove old workaround
2021-08-03 19:50:16 -07:00
Leonardo de Moura
4cd7e359df
feat: elaborate strict implicit binders
2021-08-03 19:40:44 -07:00
Leonardo de Moura
d1d7ce1839
feat: start support for strict implicit binder annotation
2021-08-03 18:42:15 -07:00
Leonardo de Moura
68cd66a2b6
feat: elaborate visibility modifier at initialization commands
2021-08-03 17:56:52 -07:00
Leonardo de Moura
f9672fe4c6
feat: add optional visibitily modifier to initialize and builtin_initialize commands
2021-08-03 14:37:22 -07:00
Leonardo de Moura
65aafc070c
chore: remove mkInternalSubobjectFieldName hack
2021-08-03 12:05:10 -07:00
Daniel Selsam
6940166db4
chore: rebase and rm rawPos
2021-08-03 09:13:18 +02:00
Daniel Selsam
89364b802b
feat: top-down heuristic delaboration
2021-08-03 09:13:18 +02:00
Leonardo de Moura
d864afae91
feat: private fields
...
closes #418
2021-08-02 20:20:21 -07:00
Leonardo de Moura
90047e73e8
feat: cache structure parent names
2021-08-02 18:58:00 -07:00
Leonardo de Moura
cfb7e27b87
fix: isStructure vs isStructureLike
2021-08-02 18:54:19 -07:00
Leonardo de Moura
635bc78d72
feat: use structure extension to implement Structure.lean
2021-08-02 18:03:20 -07:00
Leonardo de Moura
1ca62e21fd
feat: add environment extension for storing structure field information
2021-08-02 16:17:35 -07:00
Leonardo de Moura
bba9353619
fix: make sure isDefEqOffset does not expose kernel nat literals
...
This issue is similar to a bug where `isDefEqOffset` was exposing
`Nat.add` when processing `HAdd.hAdd`.
Fixes #561
The example at issue #561 is now working, but we may have other places
where raw literals are being accidentally exposed.
2021-08-02 11:27:00 -07:00
Leonardo de Moura
9e4582a7d0
fix: fixes #593
2021-08-02 10:46:12 -07:00
Leonardo de Moura
89e333ab52
chore: move import Lean.Elab.Open
2021-08-02 10:13:35 -07:00
Wojciech Nawrocki
a937fa26ba
chore: fewer explicit types
2021-08-01 09:58:44 +02:00
Wojciech Nawrocki
f51b80060d
feat: generic tagged Format
2021-08-01 09:58:44 +02:00
Sebastian Ullrich
32bea73708
fix: ensure hygiene of double-quoted names
...
Fixes #586
2021-07-30 07:17:50 -07:00
Sebastian Ullrich
2833c61a60
fix: respect preresolved names at resolveConst*
...
This makes sure we can properly quote e.g. `deriving` clauses and avoids
a suspicious `eraseMacroScopes` call (though not at `Elab.Syntax`, since
categories do not have to be declaration names)
2021-07-30 07:17:50 -07:00
Leonardo de Moura
51e03837f5
fix: exact and refine succeed if they produce no new metavariables
...
closes #492
2021-07-27 18:30:14 -07:00
Leonardo de Moura
6d05daf73b
feat: add flag for allowing synthetic opaque mvars to be assigned at isDefEq
...
See issue #492
TODO: add a mechanism for detecting new metavariables.
2021-07-27 17:58:08 -07:00
Leonardo de Moura
3f22d5f624
feat: take auto params into account in the structure instance notation
...
closes #461
2021-07-27 15:49:23 -07:00
Leonardo de Moura
56e247763f
fix: scope of the auto param at fields
2021-07-27 15:22:51 -07:00
Leonardo de Moura
0ccd110eb4
feat: elaborate Term.binderTactic at structure declarations
2021-07-27 14:49:23 -07:00
Leonardo de Moura
1a62826107
chore: cleanup
2021-07-27 12:41:26 -07:00
Leonardo de Moura
714cadfb31
fix: bug at structure instance notation
...
It was exposed by the second example at #461 .
2021-07-27 11:56:33 -07:00
Wojciech Nawrocki
43190e0e63
feat: FromToJson for recursive inductives
2021-07-24 10:47:38 +02:00
Wojciech Nawrocki
9a5cdaf506
chore: address review 1
2021-07-24 10:45:28 +02:00
Wojciech Nawrocki
d716bf0d96
fix: preserve lifted CoreM traces
2021-07-24 10:45:28 +02:00
Wojciech Nawrocki
4a3c172ac9
feat: parametrised deriving handlers
2021-07-24 10:45:28 +02:00
Sebastian Ullrich
dc3d94ff61
fix: check arity in notation unexpander
...
Fixes #469
2021-07-22 16:59:19 +02:00
Sebastian Ullrich
98634b5554
fix: $(_):ident is not an infallible pattern
2021-07-22 16:52:06 +02:00
Sebastian Ullrich
7e317d23db
feat: term info on where declarations
2021-07-19 13:24:59 -07:00
Sebastian Ullrich
b76dd1a8e3
feat: go-to-definition for local variables
2021-07-19 13:24:59 -07:00
Sebastian Ullrich
18becc7d7d
fix: plain term goal on binders
2021-07-19 13:24:59 -07:00
Sebastian Ullrich
4a4b4c1ef4
fix: mkAtomFrom: generate synthetic position like other *From functions
...
Also consistently use binders as reference position for an elided binder type.
Before, type errors were always given extent 1, the length of the
synthetic `_` token.
2021-07-19 13:24:59 -07:00
Sebastian Ullrich
8637220927
fix: make precedence mandatory for mixfix commands
...
Resolves #577
2021-07-19 13:18:58 -07:00
Wojciech Nawrocki
03699cd5ba
feat: uniformly split idents
2021-07-19 09:55:37 +02:00
Wojciech Nawrocki
7aca461a35
fix: hovers on elabFieldName fields
2021-07-19 09:55:37 +02:00
Wojciech Nawrocki
eef413cec8
chore: unused binding in FromToJson
2021-07-15 21:57:55 +02:00