1个不稳定版本
0.1.0 | 2023年8月11日 |
---|
#11 in #minification
30KB
789 行
graphql-minify
这是从stripIgnoredCharacters
在GraphQL.js参考实现中的Rust重实现。它使用Logos进行词法分析。
所有相关测试都已从参考实现迁移到Rust实现并运行。
注意:它不测试GraphQL文档的有效性,其唯一目的是尽可能地将文档最小化。
详细信息
删除对GraphQL文档的有效性或执行不重要的字符
- UnicodeBOM
- 空白字符
- 行终止符
- 注释
- 逗号
- 块字符串缩进
注意:在相邻的非标点符号标记之间需要一个分隔符字符,并且此函数始终使用单个空格作为分隔符。
保证输入和输出文档如果解析,会生成除节点位置之外完全相同的AST。
用法
use graphql_minify::minify;
fn main() {
let minified = minify("query { user { id name } }");
assert_eq!(minified.unwrap(), "query{user{id name}}");
}
依赖关系
~1.5MB