Commit graph

365 commits

Author SHA1 Message Date
Leonardo de Moura
3862e7867b refactor: make String.Pos opaque
TODO: this refactoring exposed bugs in `FuzzyMatching` and `Lake`

closes #410
2022-03-20 10:47:13 -07:00
Leonardo de Moura
90c442da76 feat: add internal option for communicating to the delaborator that input term is a pattern 2022-03-16 07:50:29 -07:00
Leonardo de Moura
5825eb394f refactor: move isOutParam to Expr.lean, rename consumeAutoOptParam => consumeTypeAnnotations 2022-03-10 07:37:41 -08:00
Leonardo de Moura
1f2618adba feat: delaborate cond using bif-then-else 2022-03-03 07:41:39 -08:00
Leonardo de Moura
93b5b74b36 feat: modify notation for providing motive in "match" expressions 2022-02-14 15:36:14 -08:00
Sebastian Ullrich
894dc0e1b8 fix: pretty-printing match dependent on let 2022-02-10 10:19:04 +01:00
Leonardo de Moura
12e2a79170 chore: fix codebase after removing auto pure 2022-02-03 18:08:14 -08:00
Leonardo de Moura
cf3b8d4eb4 chore: cleanup
Make the code style more uniform.
We still have a lot of leftovers from the old frontend.
2022-01-26 09:18:17 -08:00
Leonardo de Moura
3c17755730 chore: prepare to remove coe definitions
The notation `↑ e` will eagerly expand the coersion.

See #403
2022-01-20 15:07:54 -08:00
Leonardo de Moura
a21265281b chore: remove temporary workaround 2022-01-18 14:11:54 -08:00
Leonardo de Moura
1c1e6d79a7 feat: add equality proof for named patterns
The user can optionally name the equality proof.
The new test demostrates how to name the equality proof.

closes #501
2022-01-18 12:43:01 -08:00
Leonardo de Moura
6631f1d5b3 chore: use namedPatternOld 2022-01-17 17:18:03 -08:00
Leonardo de Moura
bac91b9b5b chore: remove arbitrary 2022-01-15 12:14:27 -08:00
Gabriel Ebner
50abc3e295 fix: correctly pretty-print @Eq 2022-01-12 09:41:41 +01:00
Gabriel Ebner
bdc80ce50d fix: potential nontermination in delabFor 2022-01-12 09:41:41 +01:00
Gabriel Ebner
9132b27e80 fix: delabAppImplicit: strip mdata from function 2022-01-12 09:41:41 +01:00
Leonardo de Moura
a02421185c fix: add support for BinderInfo.auxDecl at delabLam 2022-01-10 15:18:49 -08:00
Henrik Böving
4ee058039b chore: apply suggestions from code review
Co-authored-by: Gabriel Ebner <gebner@gebner.org>
2022-01-03 13:43:33 +01:00
Henrik Böving
5d3e3b9296 fix: don't drop tags in identNoAntiquot 2022-01-03 13:43:33 +01:00
Henrik Böving
6fe010d0c2 fix: keep info in auto generated notation delaborators
Previously automatically generated delaborators for syntax declared with
the notation (and derived) keywords would silently drop information
during delaboration.
2022-01-03 13:43:33 +01:00
Henrik Böving
cbedff5aba feat: optionally add information to all symbols during delaboration
Add an option called pp.tagSymbols which, if set, makes the
delaborator add term information to all symbols it can during
delaboration. This option is disabled per default because it would
break the LSP server's hovering behaviour. It is however useful
when for example automatically generating interactive documentation.
2022-01-03 13:43:33 +01:00
Gabriel Ebner
d6f629860b feat: add ppRealFill and ppRealGroup combinators 2021-12-15 11:42:38 +00:00
Gabriel Ebner
ab3e08190b feat: allow opt-out of grouping in formatter 2021-12-15 11:42:38 +00:00
Gabriel Ebner
e1b2c945e3 fix: suppress extra spaces in formatter 2021-12-15 11:42:38 +00:00
Leonardo de Moura
68bd55af32 chore: fix codebase 2021-12-10 13:12:09 -08:00
Leonardo de Moura
7de749a23c refactor: move setElabConfig to Elab directory
see #849
2021-12-06 08:12:59 -08:00
Sebastian Ullrich
80c3d88e3e refactor: optimize critical import path 2021-12-06 08:05:24 -08:00
larsk21
9028405798 fix: handle _root_ in unresolveNameGlobal with pp.fullNames 2021-11-21 15:23:21 +01:00
larsk21
63f9b37c0a fix: return fully-qualified name in PrettyPrinter when pp.fullNames is set 2021-11-21 15:23:21 +01:00
Gabriel Ebner
5aab241f7a fix: show correct popup for a + b 2021-10-26 20:19:27 +02:00
Gabriel Ebner
bfc74decde feat: add info field to Syntax.node 2021-10-26 20:19:27 +02:00
Leonardo de Moura
4c335fd660 fix: do not use let_fun notation when pp.notation is set to false 2021-10-22 14:10:37 -07:00
Leonardo de Moura
58430704e5 refactor: move inaccessible? to Expr.lean 2021-10-20 15:54:18 -07:00
Leonardo de Moura
fb27537b8e fix: appUnexpander name resolution
fixes issue reported at https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Scoping.20for.20delaborator.3F
2021-10-09 08:29:26 -07:00
Leonardo de Moura
dc5f44edcf feat: delaborate Sigma and PSigma 2021-09-25 18:19:44 -07:00
Daniel Selsam
8d370f151f fix: space before 'at' in location 2021-09-15 18:41:26 +02:00
Daniel Selsam
a35cbb5844 fix: pp.analyze skip all omitted instances 2021-09-15 09:41:16 +02:00
Daniel Selsam
664737def8 feat: trust subtype.mk by default 2021-09-15 09:41:16 +02:00
Daniel Selsam
7cdcb56c1d feat: pp.analyze extend max heuristic to imax 2021-09-15 09:41:16 +02:00
Daniel Selsam
4646b36459 feat: pp.analyze no explicit holes by default 2021-09-15 09:41:16 +02:00
Leonardo de Moura
1fd3cfb19f feat: pretty print let_fun 2021-09-11 05:15:11 -07:00
Leonardo de Moura
445cc3085f refactor: avoid Name, MVarId, and FVarId confusion 2021-09-07 19:06:50 -07:00
Leonardo de Moura
3714cf16ec refactor: lazy evaluation for <|>
see #617
2021-09-07 17:06:10 -07:00
Leonardo de Moura
c93982d10c chore: disable pp.analyze for now
see #651
2021-09-07 07:51:43 -07:00
Daniel Selsam
b36baa143f feat: improved name-unresolving in delab
Fixes #641
2021-09-07 16:26:00 +02:00
Leonardo de Moura
ef8aadcbea fix: fixes #653 2021-09-04 18:42:33 -07:00
Leonardo de Moura
bfefeb6e5a chore: use compact structure instance notation 2021-09-03 18:59:26 -07:00
Leonardo de Moura
391366ef24 refactor: add annotation for displaying conv state 2021-09-02 15:52:11 -07:00
Leonardo de Moura
a83872c718 chore: add pp.match option 2021-08-31 12:32:04 -07:00
Leonardo de Moura
f4ecbd1102 chore: reduce dependencies 2021-08-24 17:38:43 -07:00