@morphql /术语定义
这个 真理的单一来源 用于所有平台上的MorphQL语言定义(关键字、函数、操作符)。这个包确保了引擎、IDE扩展和文档之间的一致性。
目的
这个共享包集中了MorphQL语法,以便在以下情况下重用:
- VSCode扩展: TextMate语法和hover提供程序。
- 摩纳哥编辑(游乐场):语言配置和君主令牌。
- 文档:自动生成函数和关键字引用。
- 类型安全:用于语言特性的TypeScript接口。
安装
npm install @morphql/language-definitions
基本用法
import {
KEYWORDS,
FUNCTIONS,
getKeywordNames,
getFunctionNames,
} from "@morphql/language-definitions";
// Get all keyword names for a lexer
const keywords = getKeywordNames();
// Get documentation for hover providers
import { getKeywordDoc } from "@morphql/language-definitions";
const doc = getKeywordDoc("set");
// { signature: "set <target> = <expression>", description: "..." }
维护
要添加一个新的语言特性(关键字、函数或运算符),您应该:
- 更新适当的文件
src/(例如,src/functions.ts)。 - 运行
npm run build. - 更改将在下次构建时传播到VS Code扩展和Playground。
了解更多
许可证
麻省理工学院