diff options
| author | Eugen Wissner <belka@caraus.de> | 2020-05-23 06:46:21 +0200 |
|---|---|---|
| committer | Eugen Wissner <belka@caraus.de> | 2020-05-23 21:49:57 +0200 |
| commit | 7cd48217187911855cd2ad473e58d11df0c69d48 (patch) | |
| tree | 4fe56da3d1c209ea070e75f10aa21cb00eada8f4 /src/Language/GraphQL/Type | |
| parent | 26cc53ce0678d48bf7d5550df65171e6bf5288d2 (diff) | |
| download | graphql-7cd48217187911855cd2ad473e58d11df0c69d48.tar.gz | |
Don't fail on invalid fragments and variables
Diffstat (limited to 'src/Language/GraphQL/Type')
| -rw-r--r-- | src/Language/GraphQL/Type/Definition.hs | 12 | ||||
| -rw-r--r-- | src/Language/GraphQL/Type/Schema.hs | 2 |
2 files changed, 7 insertions, 7 deletions
diff --git a/src/Language/GraphQL/Type/Definition.hs b/src/Language/GraphQL/Type/Definition.hs index a916d51..559611b 100644 --- a/src/Language/GraphQL/Type/Definition.hs +++ b/src/Language/GraphQL/Type/Definition.hs @@ -44,21 +44,21 @@ import Prelude hiding (id) -- -- Almost all of the GraphQL types you define will be object types. Object -- types have a name, but most importantly describe their fields. -data ObjectType m = ObjectType - { name :: Text - , fields :: HashMap Name (Field m) - } +data ObjectType m = ObjectType Name (Maybe Text) (HashMap Name (Field m)) -- | Output object field definition. data Field m = Field - (Maybe Text) (OutputType m) (HashMap Name Argument) (FieldResolver m) + (Maybe Text) -- ^ Description. + (OutputType m) -- ^ Field type. + (HashMap Name Argument) -- ^ Arguments. + (FieldResolver m) -- ^ Resolver. -- | Resolving a field can result in a leaf value or an object, which is -- represented as a list of nested resolvers, used to resolve the fields of that -- object. data FieldResolver m = ValueResolver (ActionT m Aeson.Value) - | NestingResolver (ActionT m (Type.Wrapping (HashMap Name (FieldResolver m)))) + | NestingResolver (ActionT m (Type.Wrapping (FieldResolver m))) -- | Field argument definition. data Argument = Argument (Maybe Text) InputType (Maybe Value) diff --git a/src/Language/GraphQL/Type/Schema.hs b/src/Language/GraphQL/Type/Schema.hs index fa44694..095f27d 100644 --- a/src/Language/GraphQL/Type/Schema.hs +++ b/src/Language/GraphQL/Type/Schema.hs @@ -62,7 +62,7 @@ collectReferencedTypes schema = let (EnumType typeName _ _) = enumType in collect Prelude.id typeName (EnumTypeDefinition enumType) traverseObjectType objectType foundTypes = - let (ObjectType typeName objectFields) = objectType + let (ObjectType typeName _ objectFields) = objectType element = ObjectTypeDefinition objectType traverser = flip (foldr visitFields) objectFields in collect traverser typeName element foundTypes |
