tree-sitter 语法参考

tree-sitter 语法参考

💡 原文中文,约7800字,阅读约需19分钟。
📝

内容提要

介绍使用tree-sitter创建解析器的规则和函数,包括seq、choice、repeat、optional、prec、token、alias和field等,可构建复杂的语法逻辑并输出解析结果。其中,prec函数指定规则优先级,alias函数在语法树中使用替代名称。

🎯

关键要点

  • 介绍使用tree-sitter创建解析器的规则和函数,包括seq、choice、repeat、optional、prec、token、alias和field等。

  • tree-sitter的语法比bison和antlr4简单,使用js描述可以构建复杂逻辑。

  • 环境准备包括安装tree-sitter-cil、准备C编译器环境和node环境。

  • 创建tree-sitter-calc解析器的步骤包括创建项目和编写grammar.js。

  • 使用prec函数指定规则优先级,alias函数在语法树中使用替代名称。

  • 测试解析效果,确保表达式解析符合运算符优先级。

  • 参考tree-sitter-json说明每行的语法效果,展示如何处理JSON格式。

  • 提供语法参考表,列出额外表达式、公共字段和内置函数的说明。

➡️

继续阅读