Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Block ¶
type Block struct {
Type string // "if", "while", "sequence"
Condition string // For if/while
ThenBlock *Block // For if/while
ElseBlock *Block // For if (optional)
Statements []string // For sequence
Children []*Block // For nested blocks
}
Block represents a control flow block (if, while, or sequence of statements)
type ControlFlowAnalyzer ¶
type ControlFlowAnalyzer struct {
// contains filtered or unexported fields
}
ControlFlowAnalyzer recursively processes instructions to build control flow structure
func NewControlFlowAnalyzer ¶
func NewControlFlowAnalyzer(decompiler *Decompiler, instructions []scripting.Instruction, paramNames map[int]string, signalDef map[int]string, globalNames map[int]string) *ControlFlowAnalyzer
NewControlFlowAnalyzer creates a new analyzer
func (*ControlFlowAnalyzer) ProcessRange ¶
func (cfa *ControlFlowAnalyzer) ProcessRange(start, end int, indent int) []string
ProcessRange processes a range of instructions [start, end) and returns blocks
type Decompiler ¶
type Decompiler struct {
// contains filtered or unexported fields
}
Decompiler converts COB bytecode to BOS source or disassembly
func NewDecompiler ¶
func NewDecompiler(cob *scripting.COB) *Decompiler
NewDecompiler creates a new decompiler
func (*Decompiler) Decompile ¶
func (d *Decompiler) Decompile() (string, error)
Decompile converts COB bytecode to valid BOS source code
func (*Decompiler) Disassemble ¶
func (d *Decompiler) Disassemble(format assembly.Format) (string, error)
Disassemble produces a human-readable bytecode listing. Pass assembly.Plain for a clean listing or assembly.Annotated for the rich view with flow-control arrows and hex opcodes.
func (*Decompiler) DisassembleScript ¶
DisassembleScript produces bytecode listing for a specific named script.