Packages

An elixir interface for libgraphqlparser implemented as a NIF for parsing GraphQL.

Current section

Files

Jump to
graphql_parser lib graphql parser.ex
Raw

lib/graphql/parser.ex

defmodule GraphQL.Parser do
def parse(graphql) do
result = GraphQL.Parser.Nif.parse(graphql)
case result do
{:ok, json} ->
{:ok, Poison.Parser.parse!(json, keys: :atoms)}
{:error, message} ->
{:error, message}
end
end
def parse!(graphql) do
result = GraphQL.Parser.Nif.parse graphql
case result do
{:ok, json} ->
Poison.Parser.parse!(json, keys: :atoms)
{:error, message} ->
raise GraphQL.Parser.SyntaxError, message: message
end
end
end