{-# LANGUAGE DeriveLift #-} {-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Types.Internal.AST.DirectiveLocation ( DirectiveLocation (..), ) where import Data.Morpheus.Rendering.RenderGQL (RenderGQL (..), fromShow) import Data.Morpheus.Types.Internal.AST.Error (Msg (..)) import Language.Haskell.TH.Syntax (Lift) import Relude hiding (Show, show) import Prelude (Show (..)) data DirectiveLocation = LOCATION_QUERY | LOCATION_MUTATION | LOCATION_SUBSCRIPTION | LOCATION_FIELD | LOCATION_FRAGMENT_DEFINITION | LOCATION_FRAGMENT_SPREAD | LOCATION_INLINE_FRAGMENT | LOCATION_SCHEMA | LOCATION_SCALAR | LOCATION_OBJECT | LOCATION_FIELD_DEFINITION | LOCATION_ARGUMENT_DEFINITION | LOCATION_INTERFACE | LOCATION_UNION | LOCATION_ENUM | LOCATION_ENUM_VALUE | LOCATION_INPUT_OBJECT | LOCATION_INPUT_FIELD_DEFINITION deriving (DirectiveLocation -> DirectiveLocation -> Bool forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: DirectiveLocation -> DirectiveLocation -> Bool $c/= :: DirectiveLocation -> DirectiveLocation -> Bool == :: DirectiveLocation -> DirectiveLocation -> Bool $c== :: DirectiveLocation -> DirectiveLocation -> Bool Eq, forall t. (forall (m :: * -> *). Quote m => t -> m Exp) -> (forall (m :: * -> *). Quote m => t -> Code m t) -> Lift t forall (m :: * -> *). Quote m => DirectiveLocation -> m Exp forall (m :: * -> *). Quote m => DirectiveLocation -> Code m DirectiveLocation liftTyped :: forall (m :: * -> *). Quote m => DirectiveLocation -> Code m DirectiveLocation $cliftTyped :: forall (m :: * -> *). Quote m => DirectiveLocation -> Code m DirectiveLocation lift :: forall (m :: * -> *). Quote m => DirectiveLocation -> m Exp $clift :: forall (m :: * -> *). Quote m => DirectiveLocation -> m Exp Lift) instance Show DirectiveLocation where show :: DirectiveLocation -> String show DirectiveLocation LOCATION_QUERY = String "QUERY" show DirectiveLocation LOCATION_MUTATION = String "MUTATION" show DirectiveLocation LOCATION_SUBSCRIPTION = String "SUBSCRIPTION" show DirectiveLocation LOCATION_FIELD = String "FIELD" show DirectiveLocation LOCATION_FRAGMENT_DEFINITION = String "FRAGMENT_DEFINITION" show DirectiveLocation LOCATION_FRAGMENT_SPREAD = String "FRAGMENT_SPREAD" show DirectiveLocation LOCATION_INLINE_FRAGMENT = String "INLINE_FRAGMENT" show DirectiveLocation LOCATION_SCHEMA = String "SCHEMA" show DirectiveLocation LOCATION_SCALAR = String "SCALAR" show DirectiveLocation LOCATION_OBJECT = String "OBJECT" show DirectiveLocation LOCATION_FIELD_DEFINITION = String "FIELD_DEFINITION" show DirectiveLocation LOCATION_ARGUMENT_DEFINITION = String "ARGUMENT_DEFINITION" show DirectiveLocation LOCATION_INTERFACE = String "INTERFACE" show DirectiveLocation LOCATION_UNION = String "UNION" show DirectiveLocation LOCATION_ENUM = String "ENUM" show DirectiveLocation LOCATION_ENUM_VALUE = String "ENUM_VALUE" show DirectiveLocation LOCATION_INPUT_OBJECT = String "INPUT_OBJECT" show DirectiveLocation LOCATION_INPUT_FIELD_DEFINITION = String "INPUT_FIELD_DEFINITION" instance Msg DirectiveLocation where msg :: DirectiveLocation -> GQLError msg = forall a. Msg a => a -> GQLError msg forall b c a. (b -> c) -> (a -> b) -> a -> c . forall a. Show a => a -> String show instance RenderGQL DirectiveLocation where renderGQL :: DirectiveLocation -> Rendering renderGQL = forall a. Show a => a -> Rendering fromShow