compare formated asts before execute (#1002)

This commit is contained in:
Kurt Hutten
2023-11-06 14:43:01 +11:00
committed by GitHub
parent ca056996fd
commit af49bebde3

View File

@ -50,6 +50,14 @@ class KclManager {
engineCommandManager: EngineCommandManager
private _defferer = deferExecution((code: string) => {
const ast = parse(code)
try {
const fmtAndStringify = (ast: Program) =>
JSON.stringify(parse(recast(ast)))
const isAstTheSame = fmtAndStringify(ast) === fmtAndStringify(this._ast)
if (isAstTheSame) return
} catch (e) {
console.error(e)
}
this.executeAst(ast)
}, 600)