diff options
| author | Eugen Wissner <belka@caraus.de> | 2020-09-14 07:49:33 +0200 |
|---|---|---|
| committer | Eugen Wissner <belka@caraus.de> | 2020-09-15 08:06:07 +0200 |
| commit | 4c10ce92041dc73a95aeb64aca241dd937ffaa5c (patch) | |
| tree | 6a1742eaf6ff3ae3a4f4d0e2a3c5afbe9a146f4b /src/Language/GraphQL/Validate/Validation.hs | |
| parent | 08998dbd935e65aab10ff53c249cb214af2522f2 (diff) | |
| download | graphql-4c10ce92041dc73a95aeb64aca241dd937ffaa5c.tar.gz | |
Use Seq as base monad in the validator
It is more natural to implement the logic: try to apply each rule to
each node.
Diffstat (limited to 'src/Language/GraphQL/Validate/Validation.hs')
| -rw-r--r-- | src/Language/GraphQL/Validate/Validation.hs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/Language/GraphQL/Validate/Validation.hs b/src/Language/GraphQL/Validate/Validation.hs index a513467..4432478 100644 --- a/src/Language/GraphQL/Validate/Validation.hs +++ b/src/Language/GraphQL/Validate/Validation.hs @@ -11,8 +11,9 @@ module Language.GraphQL.Validate.Validation , Validation(..) ) where -import Control.Monad.Trans.Reader (ReaderT(..)) +import Control.Monad.Trans.Reader (ReaderT) import Data.HashMap.Strict (HashMap) +import Data.Sequence (Seq) import Data.Text (Text) import Language.GraphQL.AST.Document import Language.GraphQL.Type.Schema (Schema) @@ -39,7 +40,6 @@ data Validation m = Validation { ast :: Document , schema :: Schema m , types :: HashMap Name (Schema.Type m) - , rules :: [Rule m] } -- | 'Rule' assigns a function to each AST node that can be validated. If the @@ -55,4 +55,4 @@ data Rule m | FieldRule (Field -> RuleT m) -- | Monad transformer used by the rules. -type RuleT m = ReaderT (Validation m) Maybe Error +type RuleT m = ReaderT (Validation m) Seq Error |
