rocky
219cb0606a
MAKE_FUNCTION_8 -> MAKE_FUNCTION_CLOSURE
...
Clarity is important.
2022-02-27 10:29:53 -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
3d5b6f4654
return_lambda -> return_expr_lambda
...
Except those places in 2.6ish code where it is simple a fancy RETURN_VALUE
2022-01-01 21:45:51 -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
2ed211e0d4
Some PyPY 3.7 support
...
* Handle CALL_METHOD_KW
* adjust PyPY 3.7 assert stmts
* misc administrivia
2021-11-21 14:04:34 -05:00
rocky
15efaffe8d
More Python version tuple comparison conversion
2021-10-16 11:41:22 -04:00
rocky
8879708da7
del_stmt -> delete to match Python AST better
2020-09-02 07:14:56 -04:00
rocky
e14675c2dc
Handle 3.7+ "else" branch removal...
...
As seen in _cmp() of python3.8/distutils/version.py with optimization -O2
2020-06-12 13:18:33 -04:00
rocky
7fa851765d
Regularize "or" so args are in 1..2 and ...
...
correct "return None" semantic action
2020-05-18 22:55:26 -04:00
rocky
b94c649776
3.7 change rule to match op "or" expr's
2020-05-14 21:32:45 -04:00
rocky
538c2e7efd
More regressions with some fixes
2020-04-17 00:06:39 -04:00
rocky
4796fb9e70
"or" rule regularization + regressions from xdis
2020-04-16 23:45:39 -04:00
rocky
badfe5456f
Track "or" grammar changes...
...
Remove re deprecation warning
2020-04-16 15:25:42 -04:00
rocky
a616e1e1c7
"withstmt" -> "with" and fix async for
2020-04-01 09:48:34 -04:00
rocky
8495d208fb
3.7+ "async with" handling from decompyle3
2020-02-08 19:48:09 -05:00
rocky
b0931275a2
Need more precise "assert" for 3.8...
...
Add rule for ifelsestmtl which is needed in 3.8
2020-02-08 11:46:19 -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
b548910e57
IMPORT_NAME -> IMPORT_NAME_ATTR
...
Fixes #304
2020-01-28 01:43:20 -05:00
rocky
13b1ec7ad8
Better "ifstmt" reduction rule and ...
...
Tidy 3.7 grammar a little
Disable a number of 3.0 bytecode for now. Will Go over later.
2020-01-25 00:04:37 -05:00
rocky
7e91daf043
3.7 "if" body tweak .
2020-01-23 21:38:47 -05:00
rocky
29715bb8bf
3.8 ifelsestmt grammar rule...
...
and remove optional "c_stmts" in 3.7 "ifelsesmt" rule. We may
have to come back and add something, but when we do we'll be more
careful and this is probably all for the better.
2020-01-22 22:50:27 -05:00
rocky
73eab178ae
Towards syncing with decompyle3
2020-01-21 06:36:54 -05:00
rocky
af76218abf
More parser changes to reinstate what was working in 3.6.2...
...
However, again, probably more precise since we isolate loop rules better
However, again, this isnt' the full store. Semantics were incorrect in
Release 3.6.2 and they still are.
2020-01-17 05:36:20 -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
968f86011b
3.6+ if/else in loops where jump offsets are "large"
2020-01-15 04:43:53 -05:00
rocky
5f230fa177
Add 3.7 "testfalsel" for looping conditions
2020-01-14 18:41:39 -05:00
rocky
c3d7ba6dad
3.7 "imports" and "or"
2020-01-11 07:23:23 -05:00
rocky
6cef42f6c7
3.7+ "or" disambiguation and assert2 handling
2020-01-10 20:44:28 -05:00
rocky
14f889561b
3.7+ multiple "and" parser generalize
2020-01-09 03:37:17 -05:00
rocky
7dee584a46
3.7+ "or" handling in listcomp
2020-01-09 03:15:30 -05:00
rocky
7b76d55e55
Start to fold in 3.7 reduction-rule goodness into 3.6
2020-01-08 19:50:05 -05:00
rocky
d5df411c7a
3.7+ multiple imports of dotted path
2020-01-03 23:22:28 -05:00
rocky
825add1af7
3.7+ "if not" in list comprehension and other bug fixes
2020-01-03 09:01:48 -05:00
rocky
1a901bde8f
remove unused rule found by grammar check.
2020-01-03 01:02:31 -05:00
rocky
732b5165c2
Fix a 3.7+ chained compare bug...
...
others remain though.
2020-01-03 00:55:45 -05:00
rocky
7bd81efe9b
3.7+ "from import" vs "import as" disambiguation
2020-01-02 09:43:37 -05:00
rocky
c42e16fafe
Fix 3.7+ import as
2020-01-01 22:59:07 -05:00
rocky
6de57249ed
Start 3.6+ var type annotations and decompyle3 merge...
...
Although overall an improvement, some new breakage
has occurred and should be fixed.
2020-01-01 01:42:00 -05:00
rocky
faf6ea9630
imports for 3.7+ again
2019-12-29 01:28:05 -05:00
rocky
566143b515
Python 3.7+ optimized if in comprehension
2019-12-28 18:09:00 -05:00
rocky
b2e1edb434
Fix Python 3.7+ "import as" but keep "import from" working
2019-12-28 11:09:31 -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
805ec7dbfc
Add "if_not_and" rule similar to "if_not_or" rule.
2019-12-13 05:15:21 -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
rocky
6f51f8910c
Add 3.7+ "and" grammar rule and limit "or" more
2019-12-11 12:32:32 -05:00
rocky
bc614cf3fb
Another 3.7+ "or" grammar rule
2019-12-11 07:32:35 -05:00
rocky
05f3dad32c
Fix some 3.7+ "if"/"and" logic bugs
2019-12-11 06:56:43 -05:00
rocky
eba5226a04
Typos: decompyle3 -> uncompyle6
2019-12-08 18:05:37 -05:00