diff --git a/apps/remix-ide/src/app/tabs/debugger/debuggerUI.js b/apps/remix-ide/src/app/tabs/debugger/debuggerUI.js
index 927efd55b4..6b262420bd 100644
--- a/apps/remix-ide/src/app/tabs/debugger/debuggerUI.js
+++ b/apps/remix-ide/src/app/tabs/debugger/debuggerUI.js
@@ -233,7 +233,7 @@ class DebuggerUI {
Debugger Configuration
{ this.opt.debugWithGeneratedSources = event.target.checked }} type="checkbox" title="Debug with generated sources">
-
+
${this.txBrowser.render()}
diff --git a/libs/remix-astwalker/src/astWalker.ts b/libs/remix-astwalker/src/astWalker.ts
index a65085931b..82f19108fd 100644
--- a/libs/remix-astwalker/src/astWalker.ts
+++ b/libs/remix-astwalker/src/astWalker.ts
@@ -12,7 +12,15 @@ const isObject = function(obj: any): boolean {
export function isAstNode(node: Record): boolean {
return (
isObject(node) &&
- // 'id' in node &&
+ 'id' in node &&
+ 'nodeType' in node &&
+ 'src' in node
+ )
+}
+
+export function isYulAstNode(node: Record): boolean {
+ return (
+ isObject(node) &&
'nodeType' in node &&
'src' in node
)
@@ -200,7 +208,7 @@ export class AstWalker extends EventEmitter {
}
// eslint-disable-next-line @typescript-eslint/ban-types, @typescript-eslint/explicit-module-boundary-types
walkFullInternal(ast: AstNode, callback: Function) {
- if (isAstNode(ast)) {
+ if (isAstNode(ast) || isYulAstNode(ast)) {
// console.log(`XXX id ${ast.id}, nodeType: ${ast.nodeType}, src: ${ast.src}`);
callback(ast);
for (const k of Object.keys(ast)) {
@@ -223,7 +231,7 @@ export class AstWalker extends EventEmitter {
// Normalizes parameter callback and calls walkFullInternal
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
walkFull(ast: AstNode, callback: any) {
- if (isAstNode(ast)) return this.walkFullInternal(ast, callback);
+ if (isAstNode(ast) || isYulAstNode(ast)) return this.walkFullInternal(ast, callback);
}
// eslint-disable-next-line @typescript-eslint/ban-types, @typescript-eslint/explicit-module-boundary-types
diff --git a/libs/remix-astwalker/src/sourceMappings.ts b/libs/remix-astwalker/src/sourceMappings.ts
index 769bebdbdb..b95f707ba2 100644
--- a/libs/remix-astwalker/src/sourceMappings.ts
+++ b/libs/remix-astwalker/src/sourceMappings.ts
@@ -1,4 +1,4 @@
-import { isAstNode, AstWalker } from './astWalker';
+import { isAstNode, isYulAstNode, AstWalker } from './astWalker';
import { AstNode, LineColPosition, LineColRange, Location } from "./types";
import { util } from "@remix-project/remix-lib";
@@ -31,7 +31,7 @@ export function lineColPositionFromOffset(offset: number, lineBreaks: Array