4 个版本
使用旧 Rust 2015
0.1.3 | 2017年8月14日 |
---|---|
0.1.2 | 2017年8月14日 |
0.1.1 | 2017年8月11日 |
0.1.0 | 2017年8月10日 |
#93 in #idl
735KB
33K SLoC
graphql-idl-parser 的 C API
这是对 graphql-idl-parser
crate 的 FFI 绑定,允许你在 C 项目中使用该 crate。
头文件 (includes/gql-idl-parser.h
) 是此库的主要 API 文档。T
用法
在 example
和 test
子目录中有如何使用此 C 语言的示例。
简单地运行 cargo build --release
应该为你生成 .so
或 .dylib
。
假设你有 C 编译器,那么运行示例应该会这样工作
$ git clone git://github.com/gjtorikian/graphql-idl-parser
$ ./compile
这里是一个通用用法示例
#include "gql-idl-parser.h"
int main()
{
GraphQLTypes* types = NULL;
size_t types_len = 0;
uint8_t err;
err = gqlidl_parse_schema("# Yeah yeah\nscalar DateTime\ntype OMG {}", &types, &types_len);
if (err > 0) {
printf("Error: Return code %d", err);
exit(err);
}
for (size_t i = 0; i < types_len; i++) {
// ...
}
}
待办事项
- 运行 Valgrind
依赖关系
~3–4.5MB
~93K SLoC