Introduce graphql
function
This simplifies Attoparsec parsing when executing a GraphQL query.
This commit is contained in:
16
Data/GraphQL.hs
Normal file
16
Data/GraphQL.hs
Normal file
@ -0,0 +1,16 @@
|
||||
module Data.GraphQL where
|
||||
|
||||
import Control.Applicative (Alternative, empty)
|
||||
|
||||
import Data.Text (Text)
|
||||
|
||||
import qualified Data.Aeson as Aeson
|
||||
import qualified Data.Attoparsec.Text as Attoparsec
|
||||
|
||||
import Data.GraphQL.Execute
|
||||
import Data.GraphQL.Parser
|
||||
import Data.GraphQL.Schema
|
||||
|
||||
graphql :: (Alternative m, Monad m) => Schema m -> Text -> m Aeson.Value
|
||||
graphql schema = either (const empty) (execute schema)
|
||||
. Attoparsec.parseOnly document
|
Reference in New Issue
Block a user