summaryrefslogtreecommitdiff
path: root/src/Language/GraphQL/Execute/Execution.hs
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2020-08-25 21:03:42 +0200
committerEugen Wissner <belka@caraus.de>2020-08-25 21:03:42 +0200
commit73555332681a3702db5e277f21a53c628c3a524f (patch)
tree8d558dca6df02dd55eaaae035e8dc608c50f53dd /src/Language/GraphQL/Execute/Execution.hs
parent54dbf1df16038c9f583c1b53ab4fac1d71b194fd (diff)
downloadgraphql-73555332681a3702db5e277f21a53c628c3a524f.tar.gz
Validate single root field in subscriptions
Diffstat (limited to 'src/Language/GraphQL/Execute/Execution.hs')
-rw-r--r--src/Language/GraphQL/Execute/Execution.hs24
1 files changed, 0 insertions, 24 deletions
diff --git a/src/Language/GraphQL/Execute/Execution.hs b/src/Language/GraphQL/Execute/Execution.hs
index d8d5b13..71a2baa 100644
--- a/src/Language/GraphQL/Execute/Execution.hs
+++ b/src/Language/GraphQL/Execute/Execution.hs
@@ -83,30 +83,6 @@ resolveAbstractType abstractType values'
_ -> pure Nothing
| otherwise = pure Nothing
-doesFragmentTypeApply :: forall m
- . CompositeType m
- -> Out.ObjectType m
- -> Bool
-doesFragmentTypeApply (CompositeObjectType fragmentType) objectType =
- fragmentType == objectType
-doesFragmentTypeApply (CompositeInterfaceType fragmentType) objectType =
- instanceOf objectType $ AbstractInterfaceType fragmentType
-doesFragmentTypeApply (CompositeUnionType fragmentType) objectType =
- instanceOf objectType $ AbstractUnionType fragmentType
-
-instanceOf :: forall m. Out.ObjectType m -> AbstractType m -> Bool
-instanceOf objectType (AbstractInterfaceType interfaceType) =
- let Out.ObjectType _ _ interfaces _ = objectType
- in foldr go False interfaces
- where
- go objectInterfaceType@(Out.InterfaceType _ _ interfaces _) acc =
- acc || foldr go (interfaceType == objectInterfaceType) interfaces
-instanceOf objectType (AbstractUnionType unionType) =
- let Out.UnionType _ _ members = unionType
- in foldr go False members
- where
- go unionMemberType acc = acc || objectType == unionMemberType
-
executeField :: (MonadCatch m, Serialize a)
=> Out.Resolver m
-> Type.Value