补全:看开头分两路
(每道题开头都有同一段:T() 是上一站 lexer 的替身——源码里 token 之间用空格分开,它切成 (kind, text, line, col);show() 把树写成一行:二元运算全加括号,语句之间用 |。)
补全 stmt:开头是 let 走 let_stmt,开头是名字走 assign(IDENT "=" value ";",交回 ("assign", 名字, 值))。
(每道题开头都有同一段:T() 是上一站 lexer 的替身——源码里 token 之间用空格分开,它切成 (kind, text, line, col);show() 把树写成一行:二元运算全加括号,语句之间用 |。)
补全 stmt:开头是 let 走 let_stmt,开头是名字走 assign(IDENT "=" value ";",交回 ("assign", 名字, 值))。
全部评论