shift-interpreter
Version:
Shift-interpreter is an experimental JavaScript meta-interpreter useful for reverse engineering and analysis. One notable difference from other projects is that shift-interpreter retains state over an entire script but can be fed expressions and statement
19 lines (18 loc) • 524 B
TypeScript
import { InstructionNode } from './types';
export declare enum InstructionBufferEventName {
REQUEST_EXECUTION = "requestExecution",
HALT = "halt",
CONTINUE = "continue"
}
export declare class Instruction {
node: InstructionNode;
id: number;
result: any;
constructor(node: InstructionNode, id: number);
}
export declare class InstructionBuffer {
buffer: Instruction[];
numInstructions: number;
add(node: InstructionNode): Instruction;
nextInstruction(): Instruction | undefined;
}