2 个不稳定版本
使用旧的Rust 2015
0.2.0 | 2018年7月24日 |
---|---|
0.1.0 | 2018年7月23日 |
#55 in #following
15KB
199 行
graphql-config
本软件包提供了符合graphql-config规范的GraphQL配置的反序列化功能。
GraphQLConfiguration
是整个JSON文档的类型。它包含顶级配置(在root
字段中序列化)以及可选的项目特定配置在projects
字段中。顶级配置和项目特定配置的形状完全相同。
此库尚不支持实验性配置选项。
目前,此库遵循graphql-config规范的2.0.1版本。
示例
let config = json!({
"schemaPath": "./schema.graphql",
"includes": ["./graphql/*.graphql"],
"projects": {
"amazingLibrary": {
"schemaPath": "./amazingLibrary.schema.graphql"
}
}
});
let expected = GraphQLConfiguration {
root: GraphQLProjectConfiguration {
name: None,
schema_path: Some("./schema.graphql".into()),
includes: Some(vec!["./graphql/*.graphql".to_owned()]),
excludes: None,
extensions: None,
},
projects: Some(btreemap!{
"amazingLibrary".to_owned() => GraphQLProjectConfiguration {
schema_path: Some("./amazingLibrary.schema.graphql".into()),
name: None,
includes: None,
excludes: None,
extensions: None,
},
}),
};
let deserialized = serde_json::from_value::<GraphQLConfiguration>(config)?;
assert_eq!(deserialized, expected);
许可证:Apache-2.0 OR MIT
依赖项
~0.7–1.6MB
~35K SLoC