3个不稳定版本
0.3.0 | 2021年6月6日 |
---|---|
0.2.1 | 2021年4月8日 |
0.2.0 | 2021年4月7日 |
7 在 #graphql-parser
69 每月下载次数
在 2 个crate中使用 (通过 gurkle_codegen)
110KB
3K SLoC
Graphql解析器
此库包含GraphQL查询语言的完整解析器和格式化器,以及AST类型。
当前此库支持完整的GraphQL语法,以及以下扩展
- 订阅
- 块(三引号字符串)
- 模式定义语言/IDL(仍在RFC中)
示例:解析和格式化查询
use gurkle_parser::query::{parse_query, ParseError};
let ast = parse_query("query MyQuery { field1, field2 }")?;
// Format canonical representation
assert_eq!(format!("{}", ast), "\
query MyQuery {
field1
field2
}
");
示例:解析和格式化模式
use gurkle_parser::schema::{parse_schema, ParseError};
let ast = parse_schema(r#"
schema {
query: Query
}
type Query {
users: [User!]!,
}
"""
Example user object
This is just a demo comment.
"""
type User {
name: String!,
}
"#)?;
// Format canonical representation
assert_eq!(format!("{}", ast), "\
schema {
query: Query
}
type Query {
users: [User!]!
}
\"\"\"
Example user object
This is just a demo comment.
\"\"\"
type User {
name: String!
}
");
依赖项
~1.2–1.9MB
~40K SLoC