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
rocky
c6ddefcef5
Merging in recent 3.7 and 3.8 improvements from decompyle6
...
This rebases 3.7, 3.8 ...decompilation off of 3.7ish rather than a 3.4
base.
Add more 3.7 and 3.8 tests
2019-12-08 17:54:59 -05:00
rocky
df5df9364c
Grammar debugging for 3.0, 3.7 and 3.8
2019-11-16 17:59:30 -05:00
rocky
f1496cad4d
3.0 return_if_stmt and...
...
* Some grammar cleanup
* add more grammar debugging
2019-11-16 17:32:48 -05:00
rocky
4b82806d6c
Flow control bites again.
...
See related appveyor https://ci.appveyor.com/project/rocky/python-decompile3/builds/25301153/job/x0we0dpgb3apgk1v
2019-06-15 07:18:30 -04:00
rocky
3abe8d11d3
3.7 handling of 4-level attribute import
...
Fixes #239
2019-05-14 12:09:38 -04:00
x0ret
b62752eca1
2 more 3.7 chained comparison rule
2019-05-14 17:51:51 +04:30
rocky
9db446d928
Another 3.7 chained comparison rule
2019-05-14 07:26:18 -04:00
x0ret
3d732db3cc
fix chained compare parse error
2019-05-13 19:57:24 +04:30
rocky
8c611476fe
ifexpr -> if_expr (to track better AST camelcase)
2019-05-05 08:20:21 -04:00
rocky
bb94c7f5bc
Ned custom 3.7+ IfExp rules
2019-05-04 22:57:06 -04:00