Disassembler module
Class configuring the used disassembler parser.
- class ocgraph.internal.disassembler.interface.Disassembler
Bases:
ABCDisassembler Class.
- abstract extract_information(lines: list[str]) Generator[Instruction | FunctionHeader]
Parse the given lines of disassembler output.
This extracts all available information from the disassembler output and returns a generator providing Instruction or a FunctionHeader.
- name: str = ''
Disassembler tool identification like objdump, objdump-msp430, gdb, …
- abstract parse_jump_target(ops: list[str]) int | None
Return the jump target value from a list of operands.
- exception ocgraph.internal.disassembler.interface.DisassemblerError
Bases:
ExceptionRaised when the extract_information method was not successful.
Contains the functionality to create a specific Disassembler.
- class ocgraph.internal.disassembler.factory.DisassemblerFactory
Bases:
objectFactory class to instantiate a Disassembler.
- static create(name: str) Disassembler
Create a Parser according to the given configuration.
- static options() list[str]
Return all available disassemblers options.
Contains a parser for a common generic objdump disassembler.
- class ocgraph.internal.disassembler.objdump.ObjdumpDisassembler
Bases:
DisassemblerObjdump Disassembler Class.
- __init__() None
Initialize objdump parser.
- extract_information(lines: list[str]) Generator[Instruction | FunctionHeader]
Parse the given lines of disassembler output.
This extracts all available information from the disassembler output and returns a generator providing Instruction or a FunctionHeader.
- name: str = 'objdump'
Disassembler tool identification like SparcV8Objdump, GDB, …
- parse_jump_target(ops: list[str]) int | None
Return the jump target value from a list of operands.