Files
YouTube.js/docs/api/namespaces/JsHelpers/functions/walkAst.md
Luan 25d0876b91 refactor(Player)!: Use AST-based JS extraction with side-effect safe code emission (#1052)
* chore(deps): Add `meriyah`

* feat(utils): Implement AST-based JS extractors

* chore(utils): Remove old ast walker code

* fix(Player): Migrate js extraction logic

* chore(JsExtractor): Fix typo in tsdoc

* perf(JsAnalyzer): Simplify main AST analysis logic

* fix(JsAnalyzer): Change `break` to `return` in AST matching logic

* chore: Update docs

* chore: Don't export `PlayerInitializationOptions`

* chore(evaluate): Update error message to include doc link

* perf: Use a `for-loop` to find iife
2025-10-12 09:08:51 -03:00

31 lines
726 B
Markdown

[youtubei.js](../../../README.md) / [JsHelpers](../README.md) / walkAst
# Function: walkAst()
> **walkAst**(`root`, `visitor`): `void`
Performs a non-recursive traversal of an ESTree AST.
## Parameters
**root**: `Node`
Root AST node to start the traversal from.
**visitor**: [`AstVisitor`](../type-aliases/AstVisitor.md)
Callbacks invoked when nodes are entered or left.
## Returns
`void`
## Remarks
- If it returns `WALK_STOP`, the entire traversal is halted.
- Why did I not use some AST walker library instead?: They're too slow.
## Defined in
[src/utils/javascript/helpers.ts:62](https://github.com/LuanRT/YouTube.js/blob/af92984523f90200a18314b94478a2697c9deab0/src/utils/javascript/helpers.ts#L62)