You've already forked python-uncompyle6
mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2025-08-03 00:45:53 +08:00
59 lines
2.1 KiB
Python
59 lines
2.1 KiB
Python
import sys
|
|
|
|
|
|
def maybe_show_asm(showasm, tokens):
|
|
"""
|
|
Show the asm based on the showasm flag (or file object), writing to the
|
|
appropriate stream depending on the type of the flag.
|
|
|
|
:param showasm: Flag which determines whether the disassembled code is
|
|
written to sys.stdout or not. (It is also to pass a file
|
|
like object, into which the asm will be written).
|
|
:param tokens: The asm tokens to show.
|
|
"""
|
|
if showasm:
|
|
stream = showasm if hasattr(showasm, 'write') else sys.stdout
|
|
for t in tokens:
|
|
stream.write(t.format())
|
|
stream.write('\n')
|
|
|
|
|
|
def maybe_show_ast(showast, ast):
|
|
"""
|
|
Show the ast based on the showast flag (or file object), writing to the
|
|
appropriate stream depending on the type of the flag.
|
|
|
|
:param showasm: Flag which determines whether the abstract syntax tree is
|
|
written to sys.stdout or not. (It is also to pass a file
|
|
like object, into which the ast will be written).
|
|
:param ast: The ast to show.
|
|
"""
|
|
if showast:
|
|
stream = showast if hasattr(showast, 'write') else sys.stdout
|
|
stream.write(repr(ast))
|
|
stream.write('\n')
|
|
|
|
|
|
def maybe_show_ast_param_default(showast, name, default):
|
|
"""
|
|
Show a function parameter with default for an ast based on the showast flag
|
|
(or file object), writing to the appropriate stream depending on the type
|
|
of the flag.
|
|
|
|
:param showasm: Flag which determines whether the function parameter with
|
|
default is written to sys.stdout or not. (It is also to
|
|
pass a file like object, into which the ast will be
|
|
written).
|
|
:param name: The function parameter name.
|
|
:param default: The function parameter default.
|
|
"""
|
|
if showast:
|
|
stream = showast if hasattr(showast, 'write') else sys.stdout
|
|
stream.write('\n')
|
|
stream.write('--' + name)
|
|
stream.write('\n')
|
|
stream.write(str(default))
|
|
stream.write('\n')
|
|
stream.write('--')
|
|
stream.write('\n')
|