Commit graph

459 commits

Author SHA1 Message Date
harupy
6bda1a9e9e Simplify compile_dict 2023-01-15 23:20:00 +09:00
harupy
64736d0541 Simplify scan_expression 2023-01-15 22:08:19 +09:00
harupy
a7f1904564 Improve test 2023-01-15 16:53:13 +09:00
harupy
d7f5dadf47 Add Option to Dict.keys field 2023-01-15 16:43:13 +09:00
harupy
2f4fe8b380 Remove commented-out code 2023-01-15 16:10:51 +09:00
harupy
f8ae56c75b Fix clippy errors 2023-01-15 15:04:15 +09:00
harupy
cb3578dbf2 Fix scan_expression and compile_dict 2023-01-15 14:54:58 +09:00
harupy
375d592562 Fix scan_expression and compile_dict 2023-01-15 13:22:05 +09:00
harupy
5e7b909552 Fix unparse 2023-01-15 13:11:55 +09:00
harupy
52d2e25601 Fix dict spreading in dict literal 2023-01-15 13:01:59 +09:00
Jim Fasarakis-Hilliard
163cb5cd67 Merge pull request #4443 from bluetech/non-logical-newline-token-fixup
Fixup parse_tokens after "Add NonLogicalNewline token"
2023-01-14 12:49:04 +02:00
Ran Benita
bb2abd1cbc Fixup parse_tokens after "Add NonLogicalNewline token"
I only updated `parse()` to ignore `NonLogicalNewline`, didn't notice
it's also needed in `parse_tokens()`.
2023-01-14 11:52:33 +02:00
Noa
da96cecfca Switch from 64-bit instruction enum to out-of-line arg values 2023-01-12 23:05:17 -06:00
Ran Benita
5cc208cc43 Add NonLogicalNewline token
This token is completely ignored by the parser, but it's useful for
other users of the lexer, such as the Ruff linter. For example, the
token is helpful for a "trailing comma" lint.

The same idea exists in Python's `tokenize` module - there is a NEWLINE
token (logical newline), and a NL token (non-logical newline).

Fixes #4385.
2023-01-12 16:47:12 +02:00
Martin Fischer
fea57bcb04 Fix docs.rs build for rustpython-parser
docs.rs failed to build the documentation of the recently released
rustpython-parser 0.2.0 because the build.rs script couldn't write the
parser.rs file because docs.rs builds the documentation in a sandbox
with a read-only filesystem.

This commit fixes this by writing the parser.rs file to the cargo output
directory instead, as recommended by the docs.rs documentation.[1]

Fixes #4436.

[1]: https://docs.rs/about/builds#read-only-directories
2023-01-11 09:58:10 +01:00
Noa
e3fa5a54ba Bump all crate versions to 0.2.0 2023-01-11 00:14:28 -06:00
Jeong YunWon
2f33de77c4 first cspell dict 2023-01-09 19:57:23 +09:00
Jeong YunWon
566c7c4179 Merge pull request #4429 from youknowone/fix-format
Fix nightly clippy warnings
2023-01-07 21:38:41 +09:00
Jeong YunWon
9ff117caa0 Fix nightly clippy warnings 2023-01-07 21:07:10 +09:00
harupy
1a28e49adc Include comment text in token 2023-01-06 23:29:20 +09:00
harupy
60cbfd3a94 Implement Default for Location 2023-01-05 22:48:47 +09:00
harupy
eb75c4fa46 Address comments 2023-01-05 18:24:54 +09:00
harupy
5373dcd74d Use try_from 2023-01-05 01:18:30 +09:00
harupy
7a78e12d52 Simplify string check 2023-01-04 23:57:50 +09:00
Jeong YunWon
cecb205f56 Merge pull request #4417 from harupy/add-with-offset-methods
Add `with_col_offset` and `with_row_offset` to `Location` for conveniece
2023-01-04 17:07:31 +09:00
Jeong YunWon
a39772ae8f Merge pull request #4413 from harupy/more-generic-window-impl
Update `CharWindow` in `compiler/parser/src/lexer.rs` to allow slicing
2023-01-04 17:06:06 +09:00
harupy
89ff74457e Use Self 2023-01-04 13:19:23 +09:00
harupy
72185fecd5 Add with_col_offset and with_row_offset to Location 2023-01-04 13:16:03 +09:00
harupy
0ca8d9ea4b Address comment 2023-01-04 00:03:18 +09:00
harupy
674ab0d55e Remove incorrect EmptyExpression in parse_formatted_value 2023-01-03 23:55:50 +09:00
harupy
0b65609d26 Improve CharWindow 2023-01-03 17:27:35 +09:00
harupy
b6647b0171 Remove repetitive to_string in parse_escaped_char 2023-01-03 14:48:00 +09:00
Jeong YunWon
50f191b2c7 Merge pull request #4409 from harupy/improve-error-conversion-in-string-parser
Improve error conversion in `string_parsers.rs`
2023-01-03 14:39:01 +09:00
harupy
d1d22282bc Fix clippy error 2023-01-03 12:51:31 +09:00
harupy
6374c0df13 Improve error conversion in string_parsers.rs 2023-01-03 12:46:10 +09:00
Jeong YunWon
4a75cc029e Merge pull request #4405 from harupy/use-drain
Use `drain` to simplify `compiler/parser/src/string_parser.rs`
2023-01-03 12:41:23 +09:00
Jeong YunWon
d027ead451 Merge pull request #4399 from branai/shell-continuing-fix
Fix IndentationError works differently with cpython in interective shell
2023-01-03 04:32:03 +09:00
harupy
4c4bc41163 Use drain 2023-01-03 01:23:44 +09:00
Jim Fasarakis-Hilliard
69c012b8c5 Merge pull request #4404 from harupy/merge-match-arms
Merge match arms in `StringParser.parse_formatted_value`
2023-01-02 18:18:40 +02:00
Jim Fasarakis-Hilliard
3770faa705 Merge pull request #4402 from harupy/remove-unreachable-if
Remove unreachable code in `compiler/parser/src/string_parser.rs`
2023-01-02 17:05:45 +02:00
harupy
83ebf39ecc Merge match arms in parse_formatted_value 2023-01-02 23:16:51 +09:00
harupy
9f6d70382b Fix match 2023-01-02 22:54:48 +09:00
harupy
383ad672e7 Simplify code using match 2023-01-02 22:26:09 +09:00
harupy
33fd321fad Remove unreachable code in compiler/parser/src/string_parser.rs 2023-01-02 20:48:40 +09:00
Jeong YunWon
ef369a926a Move (c)format basic implementations to rustpython-common 2023-01-02 20:21:36 +09:00
Bijan Naimi
5f90db1527 forgot to add formatted errors.rs 2023-01-01 17:28:49 -08:00
Bijan Naimi
0c35874aec changed the shell logic for handling indents 2023-01-01 15:41:51 -08:00
Dimitris Fasarakis Hilliard
bf715ab1ca Move tests for with into parser. 2023-01-01 21:36:07 +02:00
Jim Fasarakis-Hilliard
e4d2344c41 Merge pull request #4389 from harupy/4384-follow-up
Follow-up for #4384
2023-01-01 14:53:54 +02:00
harupy
696fe66056 Remove unreachable code 2023-01-01 17:43:25 +09:00