GraphQL implementation in Lua
#lua #graphql #server #library
|
vor 9 Jahren | |
---|---|---|
README.md | vor 9 Jahren | |
parse.lua | vor 9 Jahren | |
schema.lua | vor 9 Jahren | |
types.lua | vor 9 Jahren | |
validate.lua | vor 9 Jahren |
Lua implementation of GraphQL parser using LPeg. Experimental.
require 'parse' [[{
me {
firstName
lastName
}
}]]
Gives you this scary table:
{
kind = "document",
definitions = {
{
kind = "operation",
operation = "query",
selectionSet = {
kind = "selectionSet",
selections = {
{
kind = "field",
name = {
kind = "name",
value = "me"
},
selectionSet = {
kind = "selectionSet",
selections = {
{
kind = "field",
name = {
kind = "name",
value = "firstName"
}
},
{
kind = "field",
name = {
kind = "name",
value = "lastName"
}
}
}
}
}
}
}
}
}
}
The parser can parse virtually all of the query syntax:
The type system supports scalars, objects, enums, interfaces, and unions. The built in scalars are also provided (ints, floats, strings, etc.).
MIT