diff options
| author | Eugen Wissner <belka@caraus.de> | 2020-01-01 10:58:11 +0100 |
|---|---|---|
| committer | Eugen Wissner <belka@caraus.de> | 2020-01-01 10:58:11 +0100 |
| commit | dd8f312cb3b0478a3f1e6215c73f47d49180be65 (patch) | |
| tree | 08aeba58c19e6800fd6361e7605a591871116389 /src/Language/GraphQL/Trans.hs | |
| parent | d82d5a36b32934bfeb99bf8c99637977dfe725b4 (diff) | |
| download | graphql-dd8f312cb3b0478a3f1e6215c73f47d49180be65.tar.gz | |
Rewrite argument list to argument map
Diffstat (limited to 'src/Language/GraphQL/Trans.hs')
| -rw-r--r-- | src/Language/GraphQL/Trans.hs | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/Language/GraphQL/Trans.hs b/src/Language/GraphQL/Trans.hs index 3eef904..24752a2 100644 --- a/src/Language/GraphQL/Trans.hs +++ b/src/Language/GraphQL/Trans.hs @@ -1,7 +1,7 @@ -- | Monad transformer stack used by the @GraphQL@ resolvers. module Language.GraphQL.Trans ( ActionT(..) - , Context(Context) + , Context(..) , argument ) where @@ -11,7 +11,6 @@ import Control.Monad.IO.Class (MonadIO(..)) import Control.Monad.Trans.Class (MonadTrans(..)) import Control.Monad.Trans.Except (ExceptT) import Control.Monad.Trans.Reader (ReaderT, asks) -import Data.HashMap.Strict (HashMap) import qualified Data.HashMap.Strict as HashMap import Data.Maybe (fromMaybe) import Data.Text (Text) @@ -19,7 +18,9 @@ import Language.GraphQL.AST.Core import Prelude hiding (lookup) -- | Resolution context holds resolver arguments. -newtype Context = Context (HashMap Name Value) +newtype Context = Context + { arguments :: Arguments + } -- | Monad transformer stack used by the resolvers to provide error handling -- and resolution context (resolver arguments). @@ -57,7 +58,7 @@ instance Monad m => MonadPlus (ActionT m) where -- be optional then). argument :: MonadIO m => Name -> ActionT m Value argument argumentName = do - argumentValue <- ActionT $ lift $ asks lookup + argumentValue <- ActionT $ lift $ asks $ lookup . arguments pure $ fromMaybe Null argumentValue where - lookup (Context argumentMap) = HashMap.lookup argumentName argumentMap + lookup (Arguments argumentMap) = HashMap.lookup argumentName argumentMap |
