Commit graph

188 commits

Author SHA1 Message Date
Micha Reiser
31fd625321 Add Located::start, Located::end and impl Deref 2023-04-26 10:24:34 -06:00
Micha Reiser
321ab83825 Use Located::new over struct initializer 2023-04-25 18:10:13 -06:00
Jeong YunWon
ce3cc2831e Update lalrpop 2023-03-25 22:18:02 +09:00
Jeong YunWon
70f8e04af3 Update cspell for compiler 2023-03-16 22:39:09 +09:00
Charlie Marsh
5d2228999b Include Derive feature with optional Serde dependency 2023-03-12 14:46:10 -04:00
Charlie Marsh
d9f22c1b51 Treat match and case as soft keywords in lambda assignments (#4623) 2023-03-04 12:42:05 -05:00
Charlie Marsh
86ce9e8ff3 Add optional serde dependency 2023-03-02 15:38:40 -05:00
Noa
41b465dee1 Custom marshal enc/decoding impl 2023-03-01 20:47:21 -06:00
DimitrisJim
8cb2cca9fb Use insta to verify values. 2023-02-28 20:00:47 +09:00
Jeong YunWon
268f3ad004 Use git version of unicode_names2 to avoid alias search failure 2023-02-28 20:00:47 +09:00
Charlie Marsh
fdea016ea7 Use proper locations for sub-expressions in constant matches 2023-02-26 23:10:38 -05:00
Charlie Marsh
8b9f57906a Allow type variable tuple for *args 2023-02-23 08:39:59 -05:00
Jeong YunWon
1404660364 Merge pull request #4552 from charliermarsh/charlie/loc
Limit match range to end of last statement
2023-02-23 02:11:42 +09:00
Jeong YunWon
822f0936ca Merge pull request #4543 from youknowone/flatten-parser
Flatten parser interface
2023-02-23 02:09:46 +09:00
Charlie Marsh
e17437d935 Limit match range to end of last statement 2023-02-22 11:25:50 -05:00
Charlie Marsh
ba9e7c9607 Allow trailing commas in MappingPattern 2023-02-22 10:02:41 -05:00
Jeong YunWon
30f85787a7 use super::* from tests submodules 2023-02-22 21:01:39 +09:00
Jeong YunWon
90da5ba54a remove #[macro_use] 2023-02-22 20:41:27 +09:00
Jeong YunWon
bf3f3eca62 Flatten rustpython_parser interface 2023-02-22 20:32:31 +09:00
Jeong YunWon
a8d4de27ed make_tokenizer -> lex to integrate terms
we don't distinguish scanner or tokenizer from lexer
2023-02-22 20:28:15 +09:00
Jeong YunWon
019faeac24 Fix ModeParseError message 2023-02-22 20:28:03 +09:00
Jeong YunWon
aed03c5209 Break down rustpython_parser::error module
because it doesn't share any common errors but specific error for each sub module
2023-02-22 20:28:01 +09:00
Charlie Marsh
62d88e0b86 Always wrap in SoftKeywordTransformer 2023-02-21 19:18:42 -05:00
Charlie Marsh
82b91fe9aa Expose SoftKeywordTransformer on public API 2023-02-21 19:00:32 -05:00
Jim Fasarakis-Hilliard
6e9c759cf7 Merge pull request #4519 from charliermarsh/charlie/match
Add support for match statements to parser
2023-02-21 19:43:28 +02:00
Jeong YunWon
304f6bc38e Merge pull request #4531 from charliermarsh/charlie/exception-groups
Implement except* syntax
2023-02-21 13:20:18 +09:00
Charlie Marsh
2a86dbd644 Implement except* syntax 2023-02-21 12:19:54 +09:00
Charlie Marsh
4c559a9a51 Allow starred expressions in subscripts 2023-02-20 17:59:35 -05:00
Charlie Marsh
77e827acd5 Update compiler/parser/src/soft_keywords.rs
Co-authored-by: Jim Fasarakis-Hilliard <d.f.hilliard@gmail.com>
2023-02-20 15:03:39 -05:00
Jeong YunWon
591036785c clean up soft-keyword transform 2023-02-20 15:03:39 -05:00
Charlie Marsh
f1f31324d0 Use muiltipeek 2023-02-20 15:03:39 -05:00
Charlie Marsh
8649bf6f8f Add support for match statements to parser 2023-02-20 15:03:39 -05:00
Jeong YunWon
24f4a0ed8f Merge pull request #4490 from DimitrisJim/function_parser
Add tests, some comments, to function.rs.
2023-02-13 20:00:35 +09:00
Jeong YunWon
fb4bc89812 Merge pull request #4492 from DimitrisJim/doc_parser_uno
Document parser crate.
2023-02-13 17:25:14 +09:00
Dimitris Fasarakis Hilliard
66cbe3fe62 Document parser crate. 2023-02-12 17:58:19 +02:00
Dimitris Fasarakis Hilliard
7714c5f517 Add tests, some comments, to function.rs. 2023-02-11 23:07:57 +02:00
Dimitris Fasarakis Hilliard
e6f361d2a5 Refactor: Join string and string_parser. 2023-02-11 18:05:06 +02:00
Jeong YunWon
4ee4fcf407 Add test_generator_expression_argument 2023-02-11 05:20:39 +09:00
Charlie Marsh
dc78f6033b Use entire range for generators-as-arguments 2023-02-10 10:39:40 -05:00
Dimitris Fasarakis Hilliard
31e0962c66 Document lexer. 2023-02-07 21:43:57 +02:00
Dimitris Fasarakis Hilliard
639e8fc52f Move NewLineHandler inline, don't check each character twice. 2023-02-07 20:58:53 +02:00
Jeong YunWon
00dc7ec709 use workspace dependencies 2023-02-06 15:30:38 +09:00
Dimitris Fasarakis Hilliard
bff9884df1 Hint that the unwrap should always succeed. 2023-02-01 12:17:33 +02:00
Dimitris Fasarakis Hilliard
c8005694c7 Eat for comma. 2023-01-31 12:26:05 +02:00
Dimitris Fasarakis Hilliard
d4de01c500 Add initial capacities, use u32s for indents/spaces. 2023-01-31 12:26:05 +02:00
Dimitris Fasarakis Hilliard
2a4d44d667 Don't call is_emoji_presentation for each invocation of consume_normal 2023-01-31 12:26:05 +02:00
Dimitris Fasarakis Hilliard
f4831432f9 Match on ascii start/continuation characters before calling functions. 2023-01-31 12:26:05 +02:00
Aarni Koskela
bdc0e257b1 Bump phf to 0.11 series
string_cache is still using phf_shared 0.10.0 though
2023-01-25 19:58:43 +02:00
Jeong YunWon
1304e4ba2f Merge pull request #4449 from harupy/fix-dict-spread-in-dict
Fix AST generated from a dict literal containing dict unpacking
2023-01-22 20:44:26 +09:00
Anders Kaseorg
b93b23b922 Fix end location for elif blocks
Since we parse an `elif:` block as an `If` node, its location should
include its `orelse` node like it would for an `if:` block.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2023-01-17 22:39:44 -05:00