module documentation

Opcode definitions.

Class ASYNC_GEN_WRAP Undocumented
Class BEFORE_ASYNC_WITH Undocumented
Class BEFORE_WITH Undocumented
Class BEGIN_FINALLY Undocumented
Class BINARY_ADD Undocumented
Class BINARY_AND Undocumented
Class BINARY_FLOOR_DIVIDE Undocumented
Class BINARY_LSHIFT Undocumented
Class BINARY_MATRIX_MULTIPLY Undocumented
Class BINARY_MODULO Undocumented
Class BINARY_MULTIPLY Undocumented
Class BINARY_OP Undocumented
Class BINARY_OR Undocumented
Class BINARY_POWER Undocumented
Class BINARY_RSHIFT Undocumented
Class BINARY_SUBSCR Undocumented
Class BINARY_SUBTRACT Undocumented
Class BINARY_TRUE_DIVIDE Undocumented
Class BINARY_XOR Undocumented
Class BREAK_LOOP Undocumented
Class BUILD_CONST_KEY_MAP Undocumented
Class BUILD_LIST Undocumented
Class BUILD_LIST_UNPACK Undocumented
Class BUILD_MAP Undocumented
Class BUILD_MAP_UNPACK Undocumented
Class BUILD_MAP_UNPACK_WITH_CALL Undocumented
Class BUILD_SET Undocumented
Class BUILD_SET_UNPACK Undocumented
Class BUILD_SLICE Undocumented
Class BUILD_STRING Undocumented
Class BUILD_TUPLE Undocumented
Class BUILD_TUPLE_UNPACK Undocumented
Class BUILD_TUPLE_UNPACK_WITH_CALL Undocumented
Class CACHE Undocumented
Class CALL Undocumented
Class CALL_FINALLY Undocumented
Class CALL_FUNCTION Undocumented
Class CALL_FUNCTION_EX Undocumented
Class CALL_FUNCTION_KW Undocumented
Class CALL_FUNCTION_VAR Undocumented
Class CALL_FUNCTION_VAR_KW Undocumented
Class CALL_METHOD Undocumented
Class CHECK_EG_MATCH Undocumented
Class CHECK_EXC_MATCH Undocumented
Class COMPARE_OP Undocumented
Class CONTAINS_OP Undocumented
Class CONTINUE_LOOP Undocumented
Class COPY Undocumented
Class COPY_DICT_WITHOUT_KEYS Undocumented
Class COPY_FREE_VARS Undocumented
Class DELETE_ATTR Undocumented
Class DELETE_DEREF Undocumented
Class DELETE_FAST Undocumented
Class DELETE_GLOBAL Undocumented
Class DELETE_NAME Undocumented
Class DELETE_SUBSCR Undocumented
Class DICT_MERGE Undocumented
Class DICT_UPDATE Undocumented
Class DUP_TOP Undocumented
Class DUP_TOP_TWO Undocumented
Class END_ASYNC_FOR Undocumented
Class END_FINALLY Undocumented
Class EXTENDED_ARG Undocumented
Class FOR_ITER Undocumented
Class FORMAT_VALUE Undocumented
Class GEN_START Undocumented
Class GET_AITER Undocumented
Class GET_ANEXT Undocumented
Class GET_AWAITABLE Undocumented
Class GET_ITER Undocumented
Class GET_LEN Undocumented
Class GET_YIELD_FROM_ITER Undocumented
Class IMPORT_FROM Undocumented
Class IMPORT_NAME Undocumented
Class IMPORT_STAR Undocumented
Class INPLACE_ADD Undocumented
Class INPLACE_AND Undocumented
Class INPLACE_FLOOR_DIVIDE Undocumented
Class INPLACE_LSHIFT Undocumented
Class INPLACE_MATRIX_MULTIPLY Undocumented
Class INPLACE_MODULO Undocumented
Class INPLACE_MULTIPLY Undocumented
Class INPLACE_OR Undocumented
Class INPLACE_POWER Undocumented
Class INPLACE_RSHIFT Undocumented
Class INPLACE_SUBTRACT Undocumented
Class INPLACE_TRUE_DIVIDE Undocumented
Class INPLACE_XOR Undocumented
Class IS_OP Undocumented
Class JUMP_ABSOLUTE Undocumented
Class JUMP_BACKWARD Undocumented
Class JUMP_BACKWARD_NO_INTERRUPT Undocumented
Class JUMP_FORWARD Undocumented
Class JUMP_IF_FALSE_OR_POP Undocumented
Class JUMP_IF_NOT_EXC_MATCH Undocumented
Class JUMP_IF_TRUE_OR_POP Undocumented
Class KW_NAMES Undocumented
Class LIST_APPEND Undocumented
Class LIST_EXTEND Undocumented
Class LIST_TO_TUPLE Undocumented
Class LOAD_ASSERTION_ERROR Undocumented
Class LOAD_ATTR Undocumented
Class LOAD_BUILD_CLASS Undocumented
Class LOAD_CLASSDEREF Undocumented
Class LOAD_CLOSURE Undocumented
Class LOAD_CONST Undocumented
Class LOAD_DEREF Undocumented
Class LOAD_FAST Undocumented
Class LOAD_FOLDED_CONST Undocumented
Class LOAD_GLOBAL Undocumented
Class LOAD_METHOD Undocumented
Class LOAD_NAME Undocumented
Class MAKE_CELL Undocumented
Class MAKE_CLOSURE Undocumented
Class MAKE_FUNCTION Undocumented
Class MAP_ADD Undocumented
Class MATCH_CLASS Undocumented
Class MATCH_KEYS Undocumented
Class MATCH_MAPPING Undocumented
Class MATCH_SEQUENCE Undocumented
Class NOP Undocumented
Class Opcode An opcode without arguments.
Class OpcodeWithArg An opcode with one argument.
Class POP_BLOCK Undocumented
Class POP_EXCEPT Undocumented
Class POP_FINALLY Undocumented
Class POP_JUMP_BACKWARD_IF_FALSE Undocumented
Class POP_JUMP_BACKWARD_IF_NONE Undocumented
Class POP_JUMP_BACKWARD_IF_NOT_NONE Undocumented
Class POP_JUMP_BACKWARD_IF_TRUE Undocumented
Class POP_JUMP_FORWARD_IF_FALSE Undocumented
Class POP_JUMP_FORWARD_IF_NONE Undocumented
Class POP_JUMP_FORWARD_IF_NOT_NONE Undocumented
Class POP_JUMP_FORWARD_IF_TRUE Undocumented
Class POP_JUMP_IF_FALSE Undocumented
Class POP_JUMP_IF_TRUE Undocumented
Class POP_TOP Undocumented
Class PRECALL Undocumented
Class PREP_RERAISE_STAR Undocumented
Class PRINT_EXPR Undocumented
Class PUSH_EXC_INFO Undocumented
Class PUSH_NULL Undocumented
Class RAISE_VARARGS Undocumented
Class RERAISE Undocumented
Class RESUME Undocumented
Class RETURN_GENERATOR Undocumented
Class RETURN_VALUE Undocumented
Class ROT_FOUR Undocumented
Class ROT_N Undocumented
Class ROT_THREE Undocumented
Class ROT_TWO Undocumented
Class SEND Undocumented
Class SET_ADD Undocumented
Class SET_UPDATE Undocumented
Class SETUP_ANNOTATIONS Undocumented
Class SETUP_ASYNC_WITH Undocumented
Class SETUP_EXCEPT Undocumented
Class SETUP_FINALLY Undocumented
Class SETUP_LOOP Undocumented
Class SETUP_WITH Undocumented
Class STORE_ANNOTATION Undocumented
Class STORE_ATTR Undocumented
Class STORE_DEREF Undocumented
Class STORE_FAST Undocumented
Class STORE_GLOBAL Undocumented
Class STORE_NAME Undocumented
Class STORE_SUBSCR Undocumented
Class SWAP Undocumented
Class UNARY_INVERT Undocumented
Class UNARY_NEGATIVE Undocumented
Class UNARY_NOT Undocumented
Class UNARY_POSITIVE Undocumented
Class UNPACK_EX Undocumented
Class UNPACK_SEQUENCE Undocumented
Class WITH_CLEANUP_FINISH Undocumented
Class WITH_CLEANUP_START Undocumented
Class WITH_EXCEPT_START Undocumented
Class YIELD_FROM Undocumented
Class YIELD_VALUE Undocumented
Function dis Set up version-specific arguments and call _dis().
Function dis_code Undocumented
Constant HAS_ARGUMENT Undocumented
Constant HAS_CONST Undocumented
Constant HAS_FREE Undocumented
Constant HAS_JABS Undocumented
Constant HAS_JREL Undocumented
Constant HAS_JUNKNOWN Undocumented
Constant HAS_LOCAL Undocumented
Constant HAS_NAME Undocumented
Constant HAS_NARGS Undocumented
Constant NO_NEXT Undocumented
Constant POPS_BLOCK Undocumented
Constant PUSHES_BLOCK Undocumented
Constant STORE_JUMP Undocumented
Variable python_3_10_mapping Undocumented
Variable python_3_11_mapping Undocumented
Variable python_3_7_mapping Undocumented
Variable python_3_8_mapping Undocumented
Variable python_3_9_mapping Undocumented
Class _BaseLineNumberTableParser State machine for decoding a Python line number array.
Class _LineNumberTableParser Parses the Python 3.10+ line number table format.
Class _LineNumberTableParserPre310 Parses the pre-Python 3.10 line number table format.
Function _dis Disassemble a string into a list of Opcode instances.
Function _is_backward_jump Undocumented
Function _overlay_mapping Undocumented
Function _prettyprint_arg Prettyprint `oparg`.
Function _wordcode_reader Reads binary data from pyc files as wordcode.
def dis(data: bytes, python_version: Tuple[Literal[3], int], *args, **kwargs) -> List[Opcode]: (source)

Set up version-specific arguments and call _dis().

def dis_code(code): (source)

Undocumented

HAS_ARGUMENT: int = (source)

Undocumented

Value
256
HAS_CONST: int = (source)

Undocumented

Value
1
HAS_FREE: int = (source)

Undocumented

Value
64
HAS_JABS: int = (source)

Undocumented

Value
8
HAS_JREL: int = (source)

Undocumented

Value
4
HAS_JUNKNOWN: int = (source)

Undocumented

Value
16
HAS_LOCAL: int = (source)

Undocumented

Value
32
HAS_NAME: int = (source)

Undocumented

Value
2
HAS_NARGS: int = (source)

Undocumented

Value
128

Undocumented

Value
512
POPS_BLOCK: int = (source)

Undocumented

Value
4096
PUSHES_BLOCK: int = (source)

Undocumented

Value
2048
STORE_JUMP: int = (source)

Undocumented

Value
1024
python_3_10_mapping = (source)

Undocumented

python_3_11_mapping = (source)

Undocumented

python_3_7_mapping = (source)

Undocumented

python_3_8_mapping = (source)

Undocumented

python_3_9_mapping = (source)

Undocumented

def _dis(data, python_version, mapping, co_varnames=None, co_names=None, co_consts=None, co_cellvars=None, co_freevars=None, co_lnotab=None, co_firstlineno=None): (source)

Disassemble a string into a list of Opcode instances.

def _is_backward_jump(opcls): (source)

Undocumented

def _overlay_mapping(mapping, new_entries): (source)

Undocumented

def _prettyprint_arg(cls, oparg, co_consts, co_names, co_varnames, cellvars_freevars): (source)

Prettyprint `oparg`.

def _wordcode_reader(data: bytes, mapping: Mapping[int, Type[Opcode]]) -> Iterable[Tuple[int, int, Any, Optional[int]]]: (source)

Reads binary data from pyc files as wordcode. Works with Python3.6 and above. Based on https://github.com/python/cpython/blob/feb44550888eb4755efee11bf01daeb285e5b685/Lib/dis.py#L422. Arguments: data: The block of binary pyc code mapping: {opcode : class} Yields: (start position, end position, opcode class, oparg) The opcode class should really have type `Type[Opcode]`, but using this type is more trouble than it's worth, since we would end up having to do a lot of asserts/casts to distinguish between Opcode and its subclass OpcodeWithArg.