关于[精读《手写 SQL 编译器 - 回溯》 - 前端精读]的摘要:
1 引言上回 精读《手写 SQL 编译器 - 语法分析》说到了如何利用 Js 函数实现语法分析时,留下了一个回溯问题,也就是存档、读档问题。我们把语法分析树当作一个迷宫,有直线有岔路,而想要走出迷宫,在遇到岔路时需要提前进行存档,在后面走错时读档换下一个岔路进行尝试,这个功能就叫回溯。上一篇我们实现了 分支函数,在分支执行失败后回滚 TokenIndex 位置并重试,但在函数调用栈中,如果...
1 引言上回 精读《手写 SQL 编译器 - 语法分析》说到了如何利用 Js 函数实现语法分析时,留下了一个回溯问题,也就是存档、读档问题。我们把语法分析树当作一个迷宫,有直线有岔路,而想要走出迷宫,在遇到岔路时需要提前进行存档,在后面走错时读档换下一个岔路进行尝试,这个功能就叫回溯。上一篇我们实现了 分支函数,在分支执行失败后回滚 TokenIndex 位置并重试,但在函数调用栈中,如果...