rocky
|
1a3f2b8ab0
|
Misc lint
|
2024-07-21 17:34:06 -04:00 |
|
rocky
|
7787166ddf
|
Add grammar rule involving RETURN_END_IF
|
2024-07-13 17:47:21 -04:00 |
|
rocky
|
acdf777a35
|
Sync with decompile3
|
2024-06-03 07:39:13 -04:00 |
|
rocky
|
404c46c6bb
|
Better const key sorting
|
2024-06-03 07:18:37 -04:00 |
|
rocky
|
6f2a837765
|
Better sorting of TABLE_DIRECT keys
|
2024-05-30 04:35:58 -04:00 |
|
rocky
|
156188f8bb
|
withasstmt -> with_as
This matches Python's AST naamae better. Some linting and
sorting of dictionary keys done as well.
|
2024-03-08 04:10:33 -05:00 |
|
rocky
|
8542df4639
|
Add context manager test...
handle degenerate 3.8 withas
|
2024-03-07 18:08:07 -05:00 |
|
rocky
|
f1169af582
|
simplify withas (for now)
|
2024-03-06 17:19:57 -05:00 |
|
rocky
|
8a1fd7e127
|
Keep optype info in token...
It is useful for ADD_VALUE
|
2024-02-24 17:41:32 -05:00 |
|
rocky
|
f94100d24c
|
sync with decompile3
|
2024-02-17 15:09:00 -05:00 |
|
rocky
|
dcc9d1a571
|
Fix spelling via "codespell"
|
2023-12-17 10:52:32 -05:00 |
|
rocky
|
ddeb5af6d6
|
compare_chained2 _> compare_chained_right
|
2023-07-29 12:09:25 -04:00 |
|
rocky
|
843e3585e2
|
chained-compare1 -> chained-compare-middle
|
2023-07-29 12:01:14 -04:00 |
|
rocky
|
85ba8352ba
|
Port over some recent decompyle3 3.8 fixes
|
2022-06-26 04:26:15 -04:00 |
|
rocky
|
fa9cc4c669
|
Correct 2.5-7 relative import formatting
|
2022-05-14 19:35:24 -04:00 |
|
rocky
|
021810bb2c
|
Correct 2.x formatting "slice2" nonterminal
|
2022-05-14 16:54:50 -04:00 |
|
rocky
|
f5043408ec
|
Start rolling in LOAD_ARG for 3.7+
|
2022-05-06 02:41:02 -04:00 |
|
rocky
|
eba0d37d0f
|
Improve Python 1.x decompiling
Still has bugs, but is much better.
|
2022-04-30 05:54:22 -04:00 |
|
rocky
|
371138cfbc
|
handle long literal constants faster
|
2022-04-24 13:11:20 -04:00 |
|
rocky
|
a1fe069c8c
|
Handle walrus operator
Or rather set precedence on call_stmt and expr_stmt
Adjust pytest test_single_compile so it works now
|
2022-04-12 05:21:13 -04:00 |
|
rocky
|
6f112ec5b2
|
Ensure no parens on subscript slice
|
2022-03-03 21:05:47 -05:00 |
|
rocky
|
ce5207333f
|
Remove TABLE_R0 - it hasn't been used in a while
|
2022-02-27 10:18:57 -05:00 |
|
rocky
|
deea74b6a8
|
ret_expr -> return_expr
This matches Python's AST a little more closely
|
2022-01-03 21:56:07 -05:00 |
|
rocky
|
3234673422
|
mklambda -> lambda_body matches Python AST better
Note: we can't use "lambda" since that is a reserved word
|
2021-12-26 18:48:51 -05:00 |
|
rocky
|
f6f0e344d0
|
Python 3.6+ specialization
|
2021-11-03 02:23:19 -04:00 |
|
rocky
|
ed34bf9d4a
|
use xdis.PYTHON3 not uncompyle.PYTHON3
|
2021-11-02 06:53:11 -04:00 |
|
rocky
|
b4db22d525
|
Narrow precedence for call statement
|
2020-09-03 04:35:59 -04:00 |
|
rocky
|
8879708da7
|
del_stmt -> delete to match Python AST better
|
2020-09-02 07:14:56 -04:00 |
|
rocky
|
a215ee2f00
|
Use "co_consts" in docstring detection.
Note: this is an upheaval because we need to pass "code" or at least
"code.co_consts" to the docstring detection routine
|
2020-07-21 10:31:07 -04:00 |
|
rocky
|
d7c3b8454b
|
3.8 needs call_stmt -> call
Simplify/regularize how "return" works
|
2020-05-18 22:26:18 -04:00 |
|
rocky
|
869e48877c
|
Convert to use xdis 4.3.0 or greater
|
2020-04-16 08:41:53 -04:00 |
|
rocky
|
7ed40d5f6e
|
Adjust _mklambda vs. yield precedence
|
2020-04-11 09:54:03 -04:00 |
|
rocky
|
5c6365d8a1
|
Go over "yield" and other precedence
|
2020-04-09 20:27:07 -04:00 |
|
rocky
|
5355cb5404
|
async with rules back to 3.5 and ...
add precidence on cascaded "await" expressions
|
2020-02-08 20:31:06 -05:00 |
|
rocky
|
cb35ad906c
|
One more if_exp use (ret_cond)
|
2020-02-07 16:34:48 -05:00 |
|
rocky
|
278af38df6
|
conditional -> if_exp ...
to match Python IfExp AST
|
2020-02-07 16:17:47 -05:00 |
|
rocky
|
6f4ec21ae2
|
__modname__ and __qualname__ detection...
since grammar has simplified.
May still need work for Python < 3.0
|
2020-02-02 19:09:50 -05:00 |
|
rocky
|
fdf4496a2d
|
Track grammar "stmt" simplifications class ...
* NAME_MODULE constant
* QUAL_NAME constant
|
2020-01-29 15:37:58 -05:00 |
|
rocky
|
5951f974d5
|
Fix 3.8 grammar rule bug: "for" with "if"/"return"
|
2020-01-23 06:07:34 -05:00 |
|
rocky
|
7ec1d0e17b
|
Merge branch 'master' of github.com:rocky/python-uncompyle6
|
2020-01-17 04:44:59 -05:00 |
|
rocky
|
027c9a7dc0
|
Fix "for ... if" bug introduced since 3.6.2...
However we've isolated and documented the 3.x grammar a little bit better
|
2020-01-17 04:41:16 -05:00 |
|
rocky
|
6d368d2b30
|
parens around consts when taking attr again
|
2020-01-16 22:15:28 -05:00 |
|
rocky
|
f56ad56021
|
Wacky string at beginning of fn which is not docstring...
3.7.6 test_fstring.py tests this.
|
2020-01-12 22:59:06 -05:00 |
|
rocky
|
aaba4ecb2b
|
Better try/else/finally for 3.x
|
2020-01-11 21:33:22 -05:00 |
|
rocky
|
c42e16fafe
|
Fix 3.7+ import as
|
2020-01-01 22:59:07 -05:00 |
|
rocky
|
28d9e66a53
|
Redo the way we handle complex literals and 3.7+ bug fixes...
In 3.7+ remove assert_expr* parser rules
Fix "call" precidence in 3.7+ for it children
|
2019-12-19 06:40:13 -05:00 |
|
rocky
|
e39c6c7f0a
|
Fix "with as" indenting and decorated "async def"
Misc other improvements: make check-short now is short
|
2019-12-18 09:14:09 -05:00 |
|
rocky
|
56bf3e3125
|
unary_expr -> unary_op
|
2019-12-14 10:57:19 -05:00 |
|
rocky
|
668141662e
|
unary_expr -> unary_op to match Python AST
former unary_op is now unary_operator
|
2019-12-11 15:47:46 -05:00 |
|
rocky
|
cc55fa1de1
|
binary_expr -> bin_op to match Python AST
I know binary_expr is more natural, but as with things Python we
sometimes sacrifice elegance and clarity for Python Fascism.
|
2019-12-11 13:35:21 -05:00 |
|