| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288 |
- """
- Copyright (c) 2015-2017, 2020-2024 by Rocky Bernstein
- Copyright (c) 2000 by hartmut Goebel <h.goebel@crazy-compilers.com>
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License
- as published by the Free Software Foundation; either version 2
- of the License, or (at your option) any later version.
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- NB. This is not a masterpiece of software, but became more like a hack.
- Probably a complete rewrite would be sensefull. hG/2000-12-27
- """
- __docformat__ = "restructuredtext"
- # Export various things from the modules
- from xdis.bytecode import (
- Bytecode,
- get_instructions_bytes,
- list2bytecode,
- next_offset,
- offset2line,
- op_has_argument,
- )
- from xdis.codetype import (
- Code2,
- Code3,
- Code13,
- Code15,
- Code38,
- Code310,
- Code311,
- codeType2Portable,
- )
- from xdis.codetype.base import code_has_star_arg, code_has_star_star_arg, iscode
- from xdis.cross_dis import (
- code_info,
- extended_arg_val,
- findlabels,
- findlinestarts,
- format_code_info,
- get_code_object,
- get_jump_target_maps,
- instruction_size,
- op_size,
- pretty_flags as pretty_code_flags,
- show_code,
- )
- from xdis.disasm import (
- disassemble_file,
- disco_loop,
- disco_loop_asm_format,
- get_opcode,
- show_module_header,
- )
- from xdis.instruction import Instruction
- from xdis.lineoffsets import (
- LineOffsetInfo,
- LineOffsets,
- LineOffsetsCompact,
- lineoffsets_in_file,
- lineoffsets_in_module,
- )
- from xdis.load import (
- check_object_path,
- is_bytecode_extension,
- is_pypy,
- is_python_source,
- load_file,
- load_module,
- load_module_from_file_object,
- write_bytecode_file,
- )
- from xdis.magics import (
- PYTHON_MAGIC_INT,
- canonic_python_version,
- int2magic,
- magic2int,
- sysinfo2magic,
- )
- from xdis.op_imports import get_opcode_module
- from xdis.opcodes import (
- opcode_13,
- opcode_14,
- opcode_15,
- opcode_22,
- opcode_23,
- opcode_24,
- opcode_25,
- opcode_26,
- opcode_27,
- opcode_30,
- opcode_31,
- opcode_32,
- opcode_33,
- opcode_34,
- opcode_35,
- opcode_36,
- opcode_37,
- opcode_38,
- opcode_39,
- opcode_310,
- opcode_311,
- )
- from xdis.util import (
- CO_ABSOLUTE_IMPORT,
- CO_ASYNC_GENERATOR,
- CO_COROUTINE,
- CO_FUTURE_ANNOTATIONS,
- CO_FUTURE_BARRY_AS_DBFL,
- CO_FUTURE_DIVISION,
- CO_FUTURE_GENERATOR_STOP,
- CO_FUTURE_PRINT_FUNCTION,
- CO_FUTURE_UNICODE_LITERALS,
- CO_FUTURE_WITH_STATEMENT,
- CO_GENERATOR,
- CO_GENERATOR_ALLOWED,
- CO_ITERABLE_COROUTINE,
- CO_NESTED,
- CO_NEWLOCALS,
- CO_NOFREE,
- CO_OPTIMIZED,
- CO_VARARGS,
- CO_VARKEYWORDS,
- COMPILER_FLAG_BIT,
- COMPILER_FLAG_NAMES,
- PYPY_COMPILER_FLAG_NAMES,
- co_flags_is_async,
- code2num,
- )
- # This ensures __version__ will appear in pydoc
- from xdis.version import __version__ # noqa
- from xdis.version_info import (
- IS_GRAAL,
- IS_PYPY,
- PYTHON3,
- PYTHON_VERSION_STR,
- PYTHON_VERSION_TRIPLE,
- )
- __all__ = [
- # bytecode
- "Bytecode",
- "get_instructions_bytes",
- "list2bytecode",
- "next_offset",
- "offset2line",
- "op_has_argument",
- # codetype
- "CO_ABSOLUTE_IMPORT",
- "CO_ASYNC_GENERATOR",
- "CO_COROUTINE",
- "CO_FUTURE_ANNOTATIONS",
- "CO_FUTURE_BARRY_AS_DBFL",
- "CO_FUTURE_DIVISION",
- "CO_FUTURE_GENERATOR_STOP",
- "CO_FUTURE_PRINT_FUNCTION",
- "CO_FUTURE_UNICODE_LITERALS",
- "CO_FUTURE_WITH_STATEMENT",
- "CO_GENERATOR",
- "CO_GENERATOR_ALLOWED",
- "CO_ITERABLE_COROUTINE",
- "CO_NESTED",
- "CO_NEWLOCALS",
- "CO_NOFREE",
- "CO_OPTIMIZED",
- "CO_VARARGS",
- "CO_VARKEYWORDS",
- "Code13",
- "Code15",
- "Code2",
- "Code3",
- "Code310",
- "Code311",
- "Code38",
- "code_has_star_star_arg",
- "code_has_star_arg",
- "codeType2Portable",
- "iscode",
- # cross_dis
- "code_info",
- "extended_arg_val",
- "findlinestarts",
- "findlabels",
- "format_code_info",
- "get_code_object",
- "get_jump_target_maps",
- "instruction_size",
- "pretty_code_flags",
- "op_size",
- "show_code",
- # disasm
- "get_opcode",
- "show_module_header",
- "disco_loop",
- "disco_loop_asm_format",
- "disassemble_file",
- # load
- "check_object_path",
- "is_bytecode_extension",
- "is_pypy",
- "is_python_source",
- "load_file",
- "load_module",
- "load_module_from_file_object",
- "write_bytecode_file",
- # lineoffsets
- "LineOffsetInfo",
- "LineOffsets",
- "LineOffsetsCompact",
- "lineoffsets_in_file",
- "lineoffsets_in_module",
- # instruction
- "Instruction",
- # magic
- "canonic_python_version",
- "int2magic",
- "magic2int",
- "PYTHON_MAGIC_INT",
- "sysinfo2magic",
- # opcodes
- "opcode_13",
- "opcode_14",
- "opcode_15",
- "opcode_22",
- "opcode_23",
- "opcode_24",
- "opcode_25",
- "opcode_26",
- "opcode_27",
- "opcode_30",
- "opcode_31",
- "opcode_32",
- "opcode_33",
- "opcode_34",
- "opcode_35",
- "opcode_36",
- "opcode_37",
- "opcode_38",
- "opcode_39",
- "opcode_310",
- "opcode_311",
- # op_imports
- "get_opcode_module",
- # util
- "COMPILER_FLAG_BIT",
- "COMPILER_FLAG_NAMES",
- "CO_ABSOLUTE_IMPORT",
- "CO_ASYNC_GENERATOR",
- "CO_COROUTINE",
- "CO_FUTURE_ANNOTATIONS",
- "CO_FUTURE_BARRY_AS_DBFL",
- "CO_FUTURE_DIVISION",
- "CO_FUTURE_GENERATOR_STOP",
- "CO_FUTURE_PRINT_FUNCTION",
- "CO_FUTURE_UNICODE_LITERALS",
- "CO_FUTURE_WITH_STATEMENT",
- "CO_GENERATOR",
- "CO_GENERATOR_ALLOWED",
- "CO_ITERABLE_COROUTINE",
- "CO_NESTED",
- "CO_NEWLOCALS",
- "CO_NOFREE",
- "CO_OPTIMIZED",
- "CO_VARARGS",
- "CO_VARKEYWORDS",
- "PYPY_COMPILER_FLAG_NAMES",
- "code2num",
- "co_flags_is_async",
- # version_info
- "IS_GRAAL",
- "IS_PYPY",
- "PYTHON3",
- "PYTHON_VERSION_STR",
- "PYTHON_VERSION_TRIPLE",
- "__version__",
- ]
|