diff options
| author | Eugen Wissner <belka@caraus.de> | 2020-08-28 08:32:21 +0200 |
|---|---|---|
| committer | Eugen Wissner <belka@caraus.de> | 2020-08-28 08:32:21 +0200 |
| commit | 7e78f98f090168fe8b315a5e9438e635afdf93a4 (patch) | |
| tree | e7d374311710a4fc7372dacff40b244fd5b5b866 /src/Language/GraphQL/Validate.hs | |
| parent | eebad8a27f164088e356e7936afb9a399c70363a (diff) | |
| download | graphql-7e78f98f090168fe8b315a5e9438e635afdf93a4.tar.gz | |
Validate fragment name uniqueness
Diffstat (limited to 'src/Language/GraphQL/Validate.hs')
| -rw-r--r-- | src/Language/GraphQL/Validate.hs | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/Language/GraphQL/Validate.hs b/src/Language/GraphQL/Validate.hs index bcc3bf7..53dc6f9 100644 --- a/src/Language/GraphQL/Validate.hs +++ b/src/Language/GraphQL/Validate.hs @@ -66,11 +66,16 @@ executableDefinition (DefinitionFragment definition') = operationDefinition :: forall m. OperationDefinition -> ValidateT m operationDefinition operation = - asks rules >>= foldM (ruleFilter operation) Seq.empty + asks rules >>= foldM ruleFilter Seq.empty where - ruleFilter definition' accumulator (OperationDefinitionRule rule) = - mapReaderT (runRule accumulator) $ rule definition' - ruleFilter _ accumulator _ = pure accumulator + ruleFilter accumulator (OperationDefinitionRule rule) = + mapReaderT (runRule accumulator) $ rule operation + ruleFilter accumulator _ = pure accumulator fragmentDefinition :: forall m. FragmentDefinition -> ValidateT m -fragmentDefinition _fragment = pure Seq.empty +fragmentDefinition fragment = + asks rules >>= foldM ruleFilter Seq.empty + where + ruleFilter accumulator (FragmentDefinitionRule rule) = + mapReaderT (runRule accumulator) $ rule fragment + ruleFilter accumulator _ = pure accumulator |
