457 Commits

Author SHA1 Message Date
rocky
51141ad06d Use set literals 2024-06-03 07:55:44 -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
08009f9fc7 improve list comprehensions 2024-02-25 08:19:18 -05:00
rocky
8348d86b09 Better annotation parsing for < 3.6 2024-02-11 19:46:13 -05:00
rocky
454fac4adb Handle 3.3 MAKE_FUNCTION annotation args properly 2024-02-11 11:50:25 -05:00
rocky
dcc9d1a571 Fix spelling via "codespell" 2023-12-17 10:52:32 -05:00
rocky
c0957d956f Simpilfy grammar via ending_return 2023-08-13 07:50:13 -04:00
rocky
b3ddf95d7a comprehension in lambda for 3.0 & 3.1 2023-08-12 07:12:10 -04: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
9a7eb0ad0a try to be more honest about MAKE_{FUNCTION,CLOSURE} 2023-01-16 01:45:37 -05:00
rocky
154dabfcef Handle Python 3.4 MAKE_CLOSURE fns ...
Is done just like Python 3.3
2023-01-14 09:54:48 -05:00
rocky
2264ccb1d5 A partial reduce-action sync with decompyle3
Start us add _check prefixes and _invalid to the end of check methods
2022-09-30 02:45:52 -04:00
rocky
610f2c827c Remove 3.6-specific iflastsmt reduce check
Fixes #344
2022-07-07 06:54:05 -04:00
rocky
cca015c5d6 Use LOAD_ARG in 3.6 2022-05-06 12:53:55 -04:00
rocky
92b8d9c508 Grammar lint adjustments 2022-05-06 03:02:30 -04:00
rocky
8e5faa933f Handle long 2.x bytecode literals more efficiently 2022-04-27 13:47:56 -04:00
rocky
c25fa61e33 Start handling BUILD_MAP (a class of dict) 2022-04-26 15:37:42 -04:00
rocky
bf58fb9cf2 WIP - extend fast long-literals into older Python3 2022-04-25 08:06:46 -04: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
165115289a dict_unmap -> dict_unpack matches Python AST better 2021-12-26 19:03:58 -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
23551ea70f unmap_dict -> dict_doublestar ...
This matches Python's AST (Dict) better. Variations or specializations
of an AST name, e.g. "unmap" should come at the end, not the beginning.
2021-12-23 22:57:15 -05:00
rocky
8094f3bb12 Remove PYTHON3 2021-11-03 03:00:43 -04:00
rocky
15efaffe8d More Python version tuple comparison conversion 2021-10-16 11:41:22 -04:00
rocky
c68b74a9c6 new dis - Python compisons involving tuples 2021-10-15 23:39:59 -04:00
Bernd Lörwald
f2f49104ea parsers: parse2: fix: also emit expr32 if count perfectly divisible by 1024
expr1024 requires expr32, but a build_count of 1024 would emit only the
expr1024 rule and rely on luck of it being emitted somewhere else.

Emit expr32 rule either if there is a expr32 use or a expr1024 use to avoid.
2020-12-28 01:42:42 +01:00
rocky
8879708da7 del_stmt -> delete to match Python AST better 2020-09-02 07:14:56 -04:00
rocky
7deeee8502 Push "with" grammar improvements back to 3.6 2020-06-04 05:53:21 -04:00
rocky
4796fb9e70 "or" rule regularization + regressions from xdis 2020-04-16 23:45:39 -04:00
rocky
e8e7d2086d whileelse in 3.6 sometimes has come froms...
also remove extra "L. " in token printing
2020-04-04 10:12:12 -04:00
rocky
a616e1e1c7 "withstmt" -> "with" and fix async for 2020-04-01 09:48:34 -04:00
rocky
8836444be2 Correct ifelsestmtc rules for 3.x 2020-02-09 08:14:44 -05:00
rocky
65707fa0f8 FIx bug that snuck in last commit. 2020-02-08 12:01:56 -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
7c73536b4a 3.6 "assert" and "or" handling bugs 2020-02-08 07:27:31 -05:00
rocky
c93a7a728b Add decompyle3 ifelsestmt reduction rule...
and Go over 3.3 and 3.7 runtests excludes
2020-02-07 19:22:23 -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
cf505545c0 3.6 iflastlstmt rule checking again 2020-02-01 12:00:08 -05:00
rocky
45c725feae 3.6 iflaststmtl doesn't follow ifstmt rules...
like iflaststmt does. test_dbm_dumb.py shows this
2020-02-01 11:20:58 -05:00
rocky
cdc5642715 More reduction checks...
Those in reduce check as well as those listed in parse{2,3}.

3.6 iflastsmtl needs ifstmt checking.
2020-02-01 07:10:30 -05:00
rocky
4f4850d9f7 Restrict "and" reduction checking to Python 3.6 2020-02-01 04:42:46 -05:00
rocky
cb1b2a8759 Typo in last commit 2020-01-31 19:11:13 -05:00
rocky
d64158b299 No iflastlstmt reduce check for python < 3.6...
just yet
2020-01-31 19:07:28 -05:00
rocky
2ea8a2ef7f was getting testlastl reduce rule from wrong place 2020-01-31 17:37:47 -05:00
rocky
258fac3201 limit 3.x scope of ifelstmt reduction check to 3.6
at least for now. Again, we need major cleanup of this stuff, but that
will be done later.
2020-01-31 16:22:32 -05:00
rocky
41f1d1ec09 Remove dup statement 2020-01-31 13:18:23 -05:00
rocky
89c2805c27 Start to clean up parse3 reduction rule checks...
A lot more work is needed, but this is a start.
2020-01-31 13:10:35 -05:00