feat: add reset method to Ask262Debug and use it in evaluateInEngine262 tool to clear captured marks and internal state.

This commit is contained in:
2026-04-14 13:24:38 +05:30
parent 60582fc6ae
commit 61823dcb23
2 changed files with 14 additions and 3 deletions
+11
View File
@@ -113,6 +113,17 @@ class Ask262Debug {
stopImportant() {
this._important = false;
}
/**
* Resets all captured marks and internal state.
* Clears marks array, mark index map, and resets flags.
*/
reset() {
this.marks = [];
this._markIndex.clear();
this._important = false;
this._captureEnabled = false;
}
}
export const ask262Debug = new Ask262Debug();
+3 -3
View File
@@ -142,6 +142,7 @@ export function createEvaluateInEngine262Tool() {
stopTrace: () => void;
startImportant: () => void;
stopImportant: () => void;
reset: () => void;
};
const Agent = engine.Agent;
const ManagedRealm = engine.ManagedRealm;
@@ -152,9 +153,8 @@ export function createEvaluateInEngine262Tool() {
const Value = engine.Value;
const skipDebugger = engine.skipDebugger;
// TODO: Add reset method, allow making instances and use that.
// Reset marks from previous runs
ask262Debug.marks = [];
// Reset state from previous runs
ask262Debug.reset();
// Array to capture console output
const consoleOutput: ConsoleEntry[] = [];