rocky
eafb32b9a0
NT trystmt -> try_except to match AST
2017-12-02 22:20:45 -05:00
rocky
dfdd5c6c1c
NT build_list -> list to match AST
2017-12-01 03:55:31 -05:00
rocky
01b5ed2304
NT mapexpr -> dict to match AST
2017-11-30 15:59:15 -05:00
rocky
ac4d4d1da9
NT dictcomp -> dict_comp to match AST
2017-11-30 08:50:00 -05:00
rocky
0b284f8230
NT setcomp -> set_comp to match AST
2017-11-30 07:14:29 -05:00
rocky
fcdea73b4f
list_compr -> list_comp to match AST...
...
more Python 3 custom rule cleanup
2017-11-29 21:26:31 -05:00
rocky
34117522b2
NT importstmt -> import to match AST
2017-11-29 20:20:54 -05:00
rocky
11e2637eeb
NT augassign -> aug_assign to match AST
2017-11-29 10:51:38 -05:00
rocky
7775bdabd5
import_as -> alias; and reinstate rule
2017-11-29 10:38:18 -05:00
rocky
43c3154a55
NT designatore -> store to match AST
2017-11-29 05:05:15 -05:00
rocky
c81b4df8b7
NT binary_subscr -> subscript to match AST
2017-11-29 00:08:08 -05:00
rocky
fb695616a6
NT call_function -> call to match AST
2017-11-28 22:13:23 -05:00
rocky
071207ce48
NT genexpr -> generate_exp to match AST
2017-11-28 17:53:33 -05:00
rocky
af38064a1b
remove unpack_list rule and ...
...
tidy things a bit more
2017-11-25 00:32:13 -05:00
rocky
4f0a668b7c
Add flag to tolerate deparse errors...
...
and keep going. The fragment parser should ignore errors
in nested function definitions
2017-11-04 12:29:27 -04:00
rocky
6746e5167d
Add Python 3.6.3 scanner lookup
2017-11-04 11:13:55 -04:00
rocky
9dd881fae1
Start allowing node names in template engine
...
These are now used to assert we have the right node type.
Simplify import_from
2017-10-13 11:16:58 -04:00
rocky
1392b18bd7
Adjust for spark-parser 2.7.0 incompatabilities
2017-10-10 14:14:26 -04:00
rocky
86305097d2
Go over table-semantics description yet again
2017-10-03 05:42:14 -04:00
rocky
aadea7224d
Unit test for format-specifiers
...
And in the process we catch some small bugs
2017-09-21 11:25:51 -04:00
rocky
da7421da1c
Tidy pysource and fragments a little more
2017-09-20 19:02:56 -04:00
rocky
3003070acb
engine -> template_engine
2017-09-17 11:56:51 -04:00
rocky
51ad3fb36e
Revert one of the changes pending a better fix
2017-09-10 03:01:19 -04:00
rocky
f017acce21
More semantic action cleanup
2017-09-10 02:56:47 -04:00
rocky
0cbafa6e3a
Adjust nodeInfo if it is a Token
2017-06-13 04:41:32 -04:00
rocky
4afaee2a36
Add nonterminal node in extractInfo
2017-06-13 04:17:23 -04:00
rocky
daea3c348c
Fragment tag more expressions
...
Revise make_function3 comment wrt args and kwargs
2017-06-10 16:31:56 -04:00
rocky
bf45260588
Fragment tag array subscripts
2017-06-10 08:05:18 -04:00
rocky
2e05137f2b
Set YIELD_VALUE offset in a <yield> expr
2017-06-10 02:09:58 -04:00
rocky
7b2217fda4
Mark "pass" offsets.
...
Start routine to find previous node.
2017-06-07 22:14:38 -04:00
rocky
5ca219f3d3
Remove hacky fragments try fixup...
...
hacky call_function code is also not needed or will be reinstated
properly. Better grammar structure for Python 3.6 call_function.
2017-06-06 21:58:47 -04:00
rocky
4615cda03f
Important fragments bug fix...
...
start, finish that had been adjusted wasn't getting reflected in final
returned deparsed.offsets dictionary. Redo keeping API compatibility,
i.e we still use namedtuple NodeInfo.
2017-06-05 21:17:17 -04:00
rocky
844221cd43
Small changes.
...
fragment tag EXEC_STMT
2017-06-03 23:29:46 -04:00
rocky
9a3e11a957
Fragment bugs
...
fragment.py:
* deparse_code_aorund_offset: was sometimes returning the wrong type
* capture function name offset
* lint imports
pysource.py: use a clearer variable name
2017-06-03 05:18:40 -04:00
rocky
966a4bc7dc
Track changes in ifelstmtr..
...
in fragments from pysource
2017-06-02 21:15:23 -04:00
rocky
cbbf64ccd0
Python 3.6 makefunction handling for fragments
2017-05-30 01:25:33 -04:00
rocky
cf3c07e047
Add fuzzy offset deparse lookup
2017-05-23 06:10:31 -04:00
rocky
bb24df596d
Bang on 3.x annotations
2017-04-11 17:09:10 -04:00
rocky
66518baed0
Misc cleanups
...
Favor "decompile" over "uncompyle" since "decompile" is in common use
Reduce size of pysource.py by splitting out constants
2017-01-08 09:26:19 -05:00
rocky
e3f4beeb74
Lint
2016-12-24 07:45:02 -05:00
rocky
b43cbc050d
Was passing wrong type
2016-12-13 20:05:08 -05:00
rocky
c8550d5c9e
Split out print_docstring
...
move from pysource.py to new helper.py
2016-11-22 05:29:50 -05:00
rocky
80a4ad4f1b
Python 3.0 while1 if bug...
...
Is a workaround. We really need more tagging in of SETUP_LOOP and COME_FROM.
2016-11-13 01:28:36 -05:00
rocky
50c2e1bda9
Revert augassign change but..
...
Make note of what's going on and add grammar test for bad
situations we have in Python 2.6 (and perhaps others)
2016-11-11 09:08:02 -05:00
rocky
0f536b18fa
Bug in detecting 3.3 default value in lambda
2016-11-10 23:59:51 -05:00
rocky
6fb879d0d8
Detect some erroneous decompilations
...
Until we can actually prevent these in grammar rules, we will warn of
improper decompilations.
Also, we now stop when we hit a decompile error. Previously we were not.
2016-11-10 22:29:39 -05:00
rocky
2328ca7a55
Break out make_function() into its own file.
...
It is already too complex and will get worse in Python 3.6.
Note: make_function in fragments.py is still inside and
probably needs fixup.
2016-10-29 07:22:58 -04:00
rocky
fe072d8b57
DRY fragments.py preorder code
...
pysource.py: doc typo
2016-10-11 22:24:00 -04:00
rocky
c7788e4545
disassemble -> ingest where appropriate
...
As part of tokenization for (de)parsing, we need to do something like a
disassembly, but is is really a little different.
Disassembly, strictly speaking, is done by the xdis module now.
What "ingestion" does is massage the instruction tokens to a form that is
more amenable for parsing.
In sum, ingestion is different than disassembly, although disassembly is
generally the first part of ingestion.
2016-09-04 11:43:02 -04:00
rocky
3ef0325cb8
Small changes
2016-07-29 19:54:16 -04:00