Commit graph

760 commits

Author SHA1 Message Date
Mario Carneiro
0c3383c0b0 feat: support let mut x := e | alt 2022-08-10 06:29:49 -07:00
Sebastian Ullrich
d7e14ba47f feat: openDecl antiquotation 2022-08-07 15:11:07 +02:00
Mario Carneiro
59b32da2d9 feat: go to def on parser aliases 2022-08-06 12:44:14 +02:00
Leonardo de Moura
55bb8e905a chore: binderIdent normalization
fixes #1411
2022-08-04 21:10:02 -07:00
Mario Carneiro
e816424466
chore: use Category declarations for builtin cats too (#1400) 2022-08-03 18:10:54 -07:00
Leonardo de Moura
e39eebabd9 fix: move doc string to parser that sets the SyntaxNodeKind for the { tac } notation
see #1403

This fixes the hover for `{ tac }`
2022-08-01 13:01:37 -07:00
Mario Carneiro
25aea1b723 doc: document all the tactics 2022-08-01 08:08:03 -07:00
Mario Carneiro
114cd3e5cd doc: add ParserCategory docs 2022-08-01 11:23:09 +02:00
Mario Carneiro
ecb787529a refactor: rename ref to declName 2022-08-01 11:23:09 +02:00
Mario Carneiro
711532f5c6 feat: add ref field to ParserCategory 2022-08-01 11:23:09 +02:00
Mario Carneiro
65e2b8a932 feat: track parser names by category 2022-08-01 11:23:09 +02:00
Mario Carneiro
89a16daa81 feat: add TokenMap 2022-07-31 15:42:26 -07:00
Mario Carneiro
603b7486e3 feat: add go-to-def for simple attributes 2022-07-31 16:36:54 +02:00
Leonardo de Moura
2f00d60115 feat: helper parser for issue #1371 2022-07-31 04:30:02 -07:00
Leonardo de Moura
ab6af0118c doc: add inductive command doc string 2022-07-30 15:15:16 -07:00
Mario Carneiro
9a401c852c feat: add decl_name% / with_decl_name% macros 2022-07-29 21:42:51 +02:00
Sebastian Ullrich
a2ccf8f122 feat: accept keywords as constructor names 2022-07-28 12:46:28 -07:00
Leonardo de Moura
1c770ac8d7 feat: doc strings for declare_syntax_cat
see #1374
2022-07-27 13:40:08 -07:00
Leonardo de Moura
1bf53e4fc9 doc: add doc strings for let parsers 2022-07-27 10:56:44 -07:00
Leonardo de Moura
2c0de29dfd feat: add add_decl_doc command 2022-07-27 09:30:32 -07:00
Sebastian Ullrich
a941b1b859 chore: one more unused import 2022-07-24 18:24:25 +02:00
Sebastian Ullrich
6a767a66a1 perf: reduce Lean.Parser.Basic imports 2022-07-23 23:01:52 +02:00
Sebastian Ullrich
b1a9c58d43 feat: relax eager antiquotation parsing 2022-07-23 17:09:32 +02:00
Mario Carneiro
f6211b1a74
chore: convert doc/mod comments from /- to /--//-! (#1354) 2022-07-22 12:05:31 -07:00
Sebastian Ullrich
8e07e80f72 feat: docComment parser alias 2022-07-22 14:30:49 +02:00
Sebastian Ullrich
5d187b8beb fix: register tokens in parser quotation 2022-07-21 23:49:57 +02:00
Sebastian Ullrich
cdb855d281 feat: support all sensible modifiers on (builtin_)initialize
Resolves #1324
2022-07-20 22:12:20 +02:00
Leonardo de Moura
e1fc904786 feat: attributes on syntax
closes #1321
2022-07-18 23:37:11 -04:00
Gabriel Ebner
a8cab84735 refactor: use computed fields for Expr 2022-07-11 14:19:41 -07:00
Gabriel Ebner
243439a75c feat: support modifiers in computed fields 2022-07-11 12:26:53 -07:00
Gabriel Ebner
b1eb022027 feat: computed fields 2022-07-11 12:26:53 -07:00
Leonardo de Moura
fd371ea812 chore: remove getOp builtin support 2022-07-09 16:04:17 -07:00
Sebastian Ullrich
d7bcc271be refactor: avoid nested sequence in simpleBinder 2022-07-08 19:06:10 +02:00
Sebastian Ullrich
29bdc0ceac fix: bound syntax kind at v:(ppSpace ident) etc. 2022-07-07 11:49:35 +02:00
Sebastian Ullrich
2f67295c7d feat: strengthen pp* signatures 2022-07-03 19:14:49 +02:00
Leonardo de Moura
131e7be8c5 feat: add a[i]? and a[i]! parsers 2022-07-02 07:29:58 -07:00
Sebastian Ullrich
c64ac02ffc fix: declModifiers syntax kind 2022-06-28 22:35:13 +02:00
Sebastian Ullrich
eab64997cd fix: auto-group syntax parsers where necessary 2022-06-28 11:50:59 +02:00
Sebastian Ullrich
19c2644d88 chore: add more comments 2022-06-27 22:37:02 +02:00
Sebastian Ullrich
86cd656fc6 refactor: adapt raw syntax manipulations to TSyntax
Sometimes there's just no structure to work on
2022-06-27 22:37:02 +02:00
Sebastian Ullrich
f90e4ae30c feat: more TSyntax API & coercions 2022-06-27 22:37:02 +02:00
Sebastian Ullrich
a12cde41e1 chore: work around macro limitations
It would be nice if `macro` was as expressive as syntax quotations, but
right now it's not.
2022-06-27 22:37:02 +02:00
Sebastian Ullrich
c202a2c013 feat: more antiquotation kinds 2022-06-27 22:37:02 +02:00
Sebastian Ullrich
d50b1aab89 feat: <|> may produce a choice node of antiquotations 2022-06-27 22:37:02 +02:00
Sebastian Ullrich
3a61cc247e chore: introduce doSeq antiquotation 2022-06-27 22:37:02 +02:00
Sebastian Ullrich
80a92cceeb fix: avoid choice nodes with LeadingIdentBehavior.both 2022-06-27 22:37:02 +02:00
Sebastian Ullrich
7d48d125da fix: store syntax kinds of parser aliases in order to construct correct antiquotations in macro and elab 2022-06-27 22:37:02 +02:00
Sebastian Ullrich
2c54a0d17a feat: allow anonymous antiquotations for tacticSeq 2022-06-27 22:37:02 +02:00
Sebastian Ullrich
3b3961a89b chore: disable some anonymous antiquotations 2022-06-27 22:37:02 +02:00
Sebastian Ullrich
292d24ba19 feat: always store quoted kind in antiquotation kind 2022-06-27 22:37:02 +02:00