File: //lib64/python3.8/__pycache__/dis.cpython-38.opt-1.pyc
U
e5dZP @ s d Z ddlZddlZddlZddlZddlT ddlmZ ddddd d
ddd
ddge Z[ejej ej
eee
fZed ZdedfedfedffZed ZdZdd ZdVdddddZdWddddZdddd d!d"d#d$d%d&d'
Zd(d) Zd*d+ Zd,d Zd-d. Zddd/dZe d0d1Z!d2e!j"_ d3e!j_ d4e!j#_ d5e!j$_ d6e!j%_ d7e!j&_ d8e!j'_ d9e!j(_ d:Z)d;Z*G d<d de!Z+dd=d>d
Z,d?d@ Z-dAdB Z.dXdCdDZ/dYdddFdZ0ddddGdHZ1dZdddIdJdKZ2dLdM Z3e0Z4dNdO Z5dPd Z6dQd
Z7G dRd dZ8dSdT Z9e:dUkre9 dS )[z0Disassembler of Python byte code into mnemonics. N)*)__all__ code_infodisdisassembledistbdiscofindlinestarts
findlabels show_codeget_instructionsInstructionBytecodeFORMAT_VALUE)N strreprascii
MAKE_FUNCTION)defaultsZ
kwdefaultsZannotationsZclosurec C s6 zt | |d}W n tk
r0 t | |d}Y nX |S )zAttempts to compile the given source, first as an expression and
then as a statement if the first approach fails.
Utility function to accept strings in functions that otherwise
expect code objects
evalexec)compileSyntaxError)sourcenamec r /usr/lib64/python3.8/dis.py_try_compile s
r filedepthc C sh | dkrt |d dS t| dr&| j} t| dr8| j} n4t| drJ| j} n"t| dr\| j} nt| drl| j} t| drt| j }|D ]p\}}t
|trtd | |d zt
|||d
W n0 tk
r } ztd||d W 5 d}~X Y nX t|d qnht| drt| ||d
nLt
| ttfr6t| |d n.t
| trRt| ||d
ntd
t| j dS )a0 Disassemble classes, methods, functions, and other compiled objects.
With no argument, disassemble the last traceback.
Compiled objects currently include generator objects, async generator
objects, and coroutine objects, all of which store their code object
in a special attribute.
Nr! __func____code__gi_codeag_codecr_code__dict__zDisassembly of %s:r zSorry:co_code(don't know how to disassemble %s objects)r hasattrr$ r% r&