Commit graph

310 commits

Author SHA1 Message Date
Charlie Marsh
15e2ac3fd7 Start string location at kind or quote prefix 2022-10-15 11:03:50 -04:00
dvermd
eede189959 Refactor fstrings (#4188) 2022-10-14 12:16:34 +09:00
Jeong YunWon
438c73732e Merge pull request #4174 from jopemachine/fix-dis
Always insert `None` at `code_stack.constants`
2022-10-01 22:45:08 +09:00
Gyubong
830f208371 Handle Lambda Expression 2022-10-01 18:23:11 +09:00
fanninpm
91a15efdce Merge pull request #4186 from andersk/arithmetic
Spell “arithmetic” correctly
2022-09-30 09:29:36 -04:00
Anders Kaseorg
abec5c0e12 Spell “arithmetic” correctly
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-09-28 17:58:30 -07:00
Jeong YunWon
cbfcc25ea9 temporary fix of parser build 2022-09-21 16:49:35 +09:00
Jeong YunWon
2bef1f02d2 better parser build experience 2022-09-21 16:47:06 +09:00
Gyubong
f5ce4a6cc3 Always insert None at code_stack.constants 2022-09-21 16:11:29 +09:00
Charlie Marsh
307bc46d74 Add PartialOrd to Location 2022-09-04 16:31:43 -04:00
Jeong YunWon
83032d412e Merge pull request #4116 from charliermarsh/charlie/f-string
Avoid creating unused JoinedStr in FStringParser
2022-08-23 19:30:36 +09:00
Jeong YunWon
4de373551e remove Mode from codegen root 2022-08-23 05:15:27 +09:00
Jeong YunWon
8d39d5362b parser::Mode from compile::Mode 2022-08-23 05:08:24 +09:00
Jeong YunWon
122382cb53 use thiserror 2022-08-23 05:08:24 +09:00
Jeong YunWon
a1640e4aa1 new_syntax_error working without full compiler
Fix #4100
2022-08-23 05:08:24 +09:00
Jeong YunWon
4724cc63f7 Move out CompileError to core as generic form 2022-08-23 01:30:00 +09:00
Jeong YunWon
5b50c547d6 Integrate CompileError to compiler-core::BaseError 2022-08-22 23:18:41 +09:00
Jeong YunWon
1192a11d39 integrate CodegenError to compiler-core::Error 2022-08-22 18:43:03 +09:00
Jeong YunWon
9d67b944cf Integrate ParseError to compiler-core::Error 2022-08-22 16:28:08 +09:00
Jeong YunWon
9d6ab72d79 integrate ast::Location into compilre-core::Location 2022-08-22 08:42:20 +09:00
Jeong YunWon
a22abc5550 Share location between compiler crates 2022-08-22 08:42:20 +09:00
Jeong YunWon
b3095c7451 rustpython-bytecode -> rustpython-compiler-core 2022-08-22 08:42:20 +09:00
Jeong YunWon
d60ad9be23 sort Cargo.toml dependencies 2022-08-22 08:42:20 +09:00
Jeong YunWon
0e0433b87b clean up cargo.toml sort 2022-08-22 08:42:20 +09:00
Jeong YunWon
03ccd4b9d8 Add source_path to ParseError 2022-08-22 08:42:20 +09:00
Jeong YunWon
cf10e800a6 codegen::{CompileError -> CodegenError} 2022-08-22 08:42:20 +09:00
Jeong YunWon
3690272256 Refactor Mode and partial parser/codegen for eval/exec 2022-08-22 08:42:20 +09:00
Jeong YunWon
9c229ebb99 Refactor symboltables and _ast to use codegen when possible 2022-08-22 08:42:20 +09:00
Charles Marsh
147187d18d Fix f-string regression 2022-08-21 19:20:23 -04:00
Charles Marsh
fa2e69983f Avoid creating unused JoinedStr in FStringParser 2022-08-21 16:59:36 -04:00
Jeong YunWon
060d153bb3 reorganize compiler crates 2022-08-22 04:42:42 +09:00
Jeong YunWon
3351b4408b Clean up imports 2022-08-22 03:42:29 +09:00
Jeong YunWon
266b1f1aea Implement new features for updated python asdl 2022-08-19 04:52:45 +09:00
Jeong YunWon
308c82a935 update asdl_rs.py for updated Python.asdl 2022-08-19 04:52:45 +09:00
Jeong YunWon
c476c276ab replace try_parse!() macro to closure 2022-08-12 08:35:34 +09:00
Jeong YunWon
fa6c66272e compile_with as recursive form 2022-08-11 07:45:30 +09:00
Jeong YunWon
a9306971ae Fix with-statement location 2022-08-11 07:14:20 +09:00
Jeong YunWon
75b886bcd6 enhance dis output to print line numbers 2022-08-11 07:14:20 +09:00
Jeong YunWon
1a09ba0ede max_stacksize -> max_stackdepth 2022-08-11 06:22:39 +09:00
Jeong YunWon
c3b1400240 Fix max_stacksize DEBUG to use const 2022-08-11 06:21:48 +09:00
Jeong YunWon
6760d21399 Fix break to contain end label 2022-08-11 02:01:34 +09:00
Jeong YunWon
3bf931fbb0 Fix comprehension bytecode generation 2022-08-10 05:32:48 +09:00
Myeongseon Choi
16d34ad5d2 Except operator cases from delete error rule 2022-07-20 18:10:42 +09:00
Myeongseon Choi
0b331cc916 Update del statement del [x] available 2022-07-20 18:10:15 +09:00
Myeongseon Choi
f869bc8371 Change error msg "can't" to "cannot" 2022-07-20 13:28:01 +09:00
Jeong Yunwon
46404a4665 Fix nightly clippy warnings 2022-06-24 01:13:32 +09:00
Jeong Yunwon
cb5324d023 Add compile::Mode::BlockExpr 2022-05-27 10:14:13 +09:00
Jeong Yunwon
2262971b12 Remove Instruction::MapAddRev 2022-05-20 08:23:24 +09:00
Jeong Yunwon
da3d41ce27 Fix comprehension instruction evaluation order 2022-05-20 08:23:24 +09:00
snowapril
dc1d6616ca Add missing codes for empty statement body
Fix #3704
Compared to previous version of `compile_program_single`, below two
codes are skipped when an empty body is given.
```rust
self.emit_constant(ConstantData::None);
self.emit(Instruction::ReturnValue);
```

Signed-off-by: snowapril <sinjihng@gmail.com>
2022-05-16 11:51:49 +09:00