rocky
c43c9a19aa
Move to GPL3 license
2018-02-27 06:40:36 -05:00
rocky
7b38d2f1f8
Adjust for xdis opcode JUMP_OPS. release 2.12.0
2017-09-25 20:01:31 -04:00
rocky
2e164763eb
Start supporting Pypy 3.5 (5.7.1-beta)
2017-07-08 17:47:32 -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
3a78332d59
tok.format -> tok.__str__; simplify pypy code
2016-07-27 09:26:39 -04:00
rocky
0075c8a5f7
Python 3 code cleanup
2016-07-08 22:33:42 -04:00
rocky
ebcb1d08f4
Limited support for Python 2.3
2016-06-03 10:20:52 -04:00
rocky
eefbc40eef
option to show asm and DRY.
...
Get ready for some 2.3 support
2016-06-03 09:25:20 -04:00
rocky
70c6ee946c
Work around lack of JUMP_OPs in xdis 1.1.0
2016-05-31 20:03:28 -04:00
rocky
20768266b4
use totally xdis's opcodes
...
Needs xdis 1.1.0 or greater
2016-05-31 19:53:17 -04:00
rocky
90741148ad
DRY scanners more
2016-05-28 17:07:43 -04:00
rocky
fca233419f
Remove dis3. Fix in 3.x list if not comprehension
2016-05-28 12:05:38 -04:00
rocky
64191aa2d3
use xdis 3.4-3.5 opcodes
2016-05-28 00:58:27 -04:00
rocky
6956e88e0e
Small changes and administrivia
2016-05-19 08:40:20 -04:00
rocky
a08ece371e
pydisassemble improvements; DRY scannners
...
disas.py:
- disassembles *all* code objects found
scanner*.py:
- no longer need to pass in version numbers; this
is obtained from the class name
- no longer pass in opcodes; this is done at
initialization from the scanner name
- all Pythoin 3 scanners support native disassembly
2016-05-18 10:58:48 -04:00
rocky
bb31629c35
pydisassemble disassemble without grammar mangling
...
Some other small cleanups as well
2016-05-15 13:55:21 -04:00
rocky
b9692c9b1f
DRY scanner34 and scanner35
...
handle 3.0..3.4 build maps as key/value pairs
2016-05-15 03:29:08 -04:00
rocky
1d9ab4e1d1
Start to DRY Python 3.4 and 3.5 scanners
2016-05-14 16:55:44 -04:00
rocky
37406557bc
More small changes
2016-05-12 12:59:31 -04:00
rocky
631d7be921
Redo make_function for *, arg
...
main(*, file='foo') and things like that now work
2016-05-11 20:34:20 -04:00
rocky
4a79082872
Fix 3.5 if..pass bug
...
Update HISTORY.MD to include Dan Pascu. Some minor doc corrections
2016-05-08 10:32:11 -04:00
rocky
61c4a711a2
DRY scanner 3.{4,5} code
2016-05-08 00:52:02 -04:00
rocky
36ffd4c31f
Handle Python 3 yield from
...
Start dealing with MAKE_FUNCTION flags - not done yet.
2016-05-07 11:33:18 -04:00
rocky
6765a2ea97
Add cross-Python-protable 3.5 dis module
2016-05-05 03:17:25 -04:00
rocky
c85496a92d
Handle 3.5 with [as]
...
scanner35.py: Fix a small variable-name typo
2016-05-04 22:15:03 -04:00
rocky
7bf93980ce
Don't repeat next_except_jump
2016-05-03 19:39:01 -04:00
rocky
dcbf8d2cf7
Bug in 3.5 constant map parsing
2016-05-01 20:54:42 -04:00
rocky
31ebe88b38
Start to DRY opcode code. Limited support for decopyling Python 3.5
2016-01-02 22:59:02 -05:00