From 625d7100ca123e5aff265fb843ec4979d76a9f7d Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Fri, 22 Nov 2019 08:00:50 +0100 Subject: Try type parsers in a different order --- src/Language/GraphQL/AST/Transform.hs | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'src/Language/GraphQL/AST/Transform.hs') diff --git a/src/Language/GraphQL/AST/Transform.hs b/src/Language/GraphQL/AST/Transform.hs index 0dfc5e5..95cdfbb 100644 --- a/src/Language/GraphQL/AST/Transform.hs +++ b/src/Language/GraphQL/AST/Transform.hs @@ -13,12 +13,10 @@ import Control.Monad (foldM, unless) import Control.Monad.Trans.Class (lift) import Control.Monad.Trans.Reader (ReaderT, ask, runReaderT) import Control.Monad.Trans.State (StateT, evalStateT, gets, modify) -import Data.Foldable (toList) import Data.HashMap.Strict (HashMap) import qualified Data.HashMap.Strict as HashMap import qualified Data.List.NonEmpty as NonEmpty import Data.Sequence (Seq, (<|), (><)) -import qualified Data.Sequence as Sequence import qualified Language.GraphQL.AST as Full import qualified Language.GraphQL.AST.Core as Core import qualified Language.GraphQL.Schema as Schema @@ -99,10 +97,9 @@ collectFragments = do fragmentDefinition :: Full.FragmentDefinition -> TransformT (Seq Core.Selection) -fragmentDefinition (Full.FragmentDefinition name _tc _dirs sels) = do +fragmentDefinition (Full.FragmentDefinition name _tc _dirs selections) = do modify deleteFragmentDefinition - selections <- traverse selection sels - let newValue = either id pure =<< Sequence.fromList (toList selections) + newValue <- appendSelection selections modify $ insertFragment newValue liftJust newValue where -- cgit v1.2.3