-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Morpheus GraphQL CLI -- -- code generator for Morpheus GraphQL @package morpheus-graphql-code-gen-utils @version 0.28.0 module Data.Morpheus.CodeGen.Printer data HSDoc n HSDoc :: Bool -> Doc n -> HSDoc n [isComplex] :: HSDoc n -> Bool [rawDocument] :: HSDoc n -> Doc n class Printer a print :: Printer a => a -> HSDoc ann apply :: Name t -> [HSDoc n] -> HSDoc n infix' :: HSDoc n -> HSDoc n -> HSDoc n -> HSDoc n print' :: Printer a => a -> Doc n unpack :: HSDoc n -> Doc n wrapped :: TypeWrapper -> HSDoc n -> HSDoc n (.<>) :: HSDoc n -> HSDoc n -> HSDoc n optional :: ([a] -> Doc n) -> [a] -> Doc n ignore :: HSDoc n -> Doc n pack :: Doc n -> HSDoc n instance Data.Morpheus.CodeGen.Printer.Printer Data.Morpheus.Types.Internal.AST.Type.TypeRef instance Data.Morpheus.CodeGen.Printer.Printer (Data.Morpheus.Types.Internal.AST.Name.Name t) instance Data.Morpheus.CodeGen.Printer.Printer Data.Text.Internal.Text instance Data.Morpheus.CodeGen.Printer.Printer GHC.Base.String instance Data.Morpheus.CodeGen.Printer.Printer Data.Morpheus.Types.Internal.AST.DirectiveLocation.DirectiveLocation instance Data.Morpheus.CodeGen.Printer.Printer Language.Haskell.TH.Syntax.Name instance Data.String.IsString (Data.Morpheus.CodeGen.Printer.HSDoc n) module Data.Morpheus.CodeGen.Internal.AST data CodeGenConstructor CodeGenConstructor :: CodeGenTypeName -> [CodeGenField] -> CodeGenConstructor [constructorName] :: CodeGenConstructor -> CodeGenTypeName [constructorFields] :: CodeGenConstructor -> [CodeGenField] data CodeGenField CodeGenField :: FieldName -> TypeName -> [FIELD_TYPE_WRAPPER] -> Bool -> CodeGenField [fieldName] :: CodeGenField -> FieldName [fieldType] :: CodeGenField -> TypeName [wrappers] :: CodeGenField -> [FIELD_TYPE_WRAPPER] [fieldIsNullable] :: CodeGenField -> Bool data CodeGenType CodeGenType :: CodeGenTypeName -> [CodeGenConstructor] -> [DerivingClass] -> CodeGenType [cgTypeName] :: CodeGenType -> CodeGenTypeName [cgConstructors] :: CodeGenType -> [CodeGenConstructor] [cgDerivations] :: CodeGenType -> [DerivingClass] data CodeGenTypeName CodeGenTypeName :: [FieldName] -> [Text] -> TypeName -> CodeGenTypeName [namespace] :: CodeGenTypeName -> [FieldName] [typeParameters] :: CodeGenTypeName -> [Text] [typename] :: CodeGenTypeName -> TypeName data DerivingClass SHOW :: DerivingClass GENERIC :: DerivingClass CLASS_EQ :: DerivingClass data FIELD_TYPE_WRAPPER MONAD :: FIELD_TYPE_WRAPPER SUBSCRIPTION :: Name -> FIELD_TYPE_WRAPPER PARAMETRIZED :: FIELD_TYPE_WRAPPER ARG :: TypeName -> FIELD_TYPE_WRAPPER TAGGED_ARG :: Name -> FieldName -> TypeRef -> FIELD_TYPE_WRAPPER GQL_WRAPPER :: TypeWrapper -> FIELD_TYPE_WRAPPER data TypeValue TypeValueObject :: TypeName -> [(FieldName, TypeValue)] -> TypeValue TypeValueNumber :: Double -> TypeValue TypeValueString :: Text -> TypeValue TypeValueBool :: Bool -> TypeValue TypeValueList :: [TypeValue] -> TypeValue TypedValueMaybe :: Maybe TypeValue -> TypeValue PrintableTypeValue :: PrintableValue -> TypeValue fromTypeName :: TypeName -> CodeGenTypeName getFullName :: CodeGenTypeName -> TypeName data ModuleDefinition dec ModuleDefinition :: Text -> [(Text, [Text])] -> [Text] -> [dec] -> ModuleDefinition dec [moduleName] :: ModuleDefinition dec -> Text [imports] :: ModuleDefinition dec -> [(Text, [Text])] [extensions] :: ModuleDefinition dec -> [Text] [types] :: ModuleDefinition dec -> [dec] data TypeClassInstance body TypeClassInstance :: Name -> [(Name, Name)] -> CodeGenTypeName -> [(Name, AssociatedType)] -> [(Name, MethodArgument, body)] -> TypeClassInstance body [typeClassName] :: TypeClassInstance body -> Name [typeClassContext] :: TypeClassInstance body -> [(Name, Name)] [typeClassTarget] :: TypeClassInstance body -> CodeGenTypeName [assoc] :: TypeClassInstance body -> [(Name, AssociatedType)] [typeClassMethods] :: TypeClassInstance body -> [(Name, MethodArgument, body)] data AssociatedType AssociatedTypeName :: Name -> AssociatedType AssociatedLocations :: [DirectiveLocation] -> AssociatedType data MethodArgument NoArgument :: MethodArgument ProxyArgument :: MethodArgument DestructArgument :: Name -> [Name] -> MethodArgument printTHName :: Name -> Doc ann data PrintableValue [PrintableValue] :: forall a. (Show a, Lift a) => a -> PrintableValue instance GHC.Show.Show Data.Morpheus.CodeGen.Internal.AST.DerivingClass instance GHC.Show.Show Data.Morpheus.CodeGen.Internal.AST.FIELD_TYPE_WRAPPER instance GHC.Show.Show Data.Morpheus.CodeGen.Internal.AST.CodeGenField instance GHC.Show.Show Data.Morpheus.CodeGen.Internal.AST.CodeGenTypeName instance GHC.Show.Show Data.Morpheus.CodeGen.Internal.AST.CodeGenConstructor instance GHC.Show.Show Data.Morpheus.CodeGen.Internal.AST.CodeGenType instance GHC.Show.Show Data.Morpheus.CodeGen.Internal.AST.AssociatedType instance GHC.Show.Show Data.Morpheus.CodeGen.Internal.AST.MethodArgument instance GHC.Show.Show body => GHC.Show.Show (Data.Morpheus.CodeGen.Internal.AST.TypeClassInstance body) instance GHC.Show.Show Data.Morpheus.CodeGen.Internal.AST.TypeValue instance Prettyprinter.Internal.Pretty Data.Morpheus.CodeGen.Internal.AST.TypeValue instance GHC.Show.Show Data.Morpheus.CodeGen.Internal.AST.PrintableValue instance Prettyprinter.Internal.Pretty Data.Morpheus.CodeGen.Internal.AST.PrintableValue instance Prettyprinter.Internal.Pretty a => Prettyprinter.Internal.Pretty (Data.Morpheus.CodeGen.Internal.AST.TypeClassInstance a) instance Prettyprinter.Internal.Pretty Data.Morpheus.CodeGen.Internal.AST.MethodArgument instance Prettyprinter.Internal.Pretty Data.Morpheus.CodeGen.Internal.AST.AssociatedType instance Prettyprinter.Internal.Pretty dec => Prettyprinter.Internal.Pretty (Data.Morpheus.CodeGen.Internal.AST.ModuleDefinition dec) instance Prettyprinter.Internal.Pretty Data.Morpheus.CodeGen.Internal.AST.CodeGenType instance Data.Morpheus.CodeGen.Printer.Printer Data.Morpheus.CodeGen.Internal.AST.CodeGenConstructor instance Data.Morpheus.CodeGen.Printer.Printer Data.Morpheus.CodeGen.Internal.AST.CodeGenTypeName instance Data.Morpheus.CodeGen.Printer.Printer Data.Morpheus.CodeGen.Internal.AST.CodeGenField instance Prettyprinter.Internal.Pretty Data.Morpheus.CodeGen.Internal.AST.DerivingClass module Data.Morpheus.CodeGen.Utils toHaskellTypeName :: TypeName -> Text camelCaseTypeName :: [Name t] -> TypeName -> TypeName toHaskellName :: FieldName -> String camelCaseFieldName :: TypeName -> FieldName -> FieldName type Flags = [Flag] data Flag FlagLanguageExtension :: Text -> Flag FlagExternal :: Text -> Flag runCodeGenT :: Monad m => CodeGenT ctx m a -> ctx -> m (a, Flags) data CodeGenT ctx (m :: Type -> Type) a langExtension :: MonadState Flags m => Text -> m () requireExternal :: MonadState Flags m => Text -> m () module Data.Morpheus.CodeGen.TH _' :: PatQ apply :: (Apply a, ToCon i a) => i -> [a] -> a applyVars :: (ToName con, ToName var, Apply res, ToCon con res, ToVar var res) => con -> [var] -> res toCon :: ToCon a b => a -> b class ToVar a b toVar :: ToVar a b => a -> b class ToName a toName :: ToName a => a -> Name class ToString a b toString :: ToString a b => a -> b v' :: ToVar Name a => a class PrintExp a printExp :: PrintExp a => a -> ExpQ class PrintType a printType :: PrintType a => a -> TypeQ class PrintDec a printDec :: PrintDec a => a -> Q Dec m' :: Type m_ :: Name printTypeSynonym :: ToName a => a -> [Name] -> Type -> Dec instance Data.Morpheus.CodeGen.TH.PrintExp body => Data.Morpheus.CodeGen.TH.PrintDec (Data.Morpheus.CodeGen.Internal.AST.TypeClassInstance body) instance Data.Morpheus.CodeGen.TH.PrintDec Data.Morpheus.CodeGen.Internal.AST.CodeGenType instance Data.Morpheus.CodeGen.TH.PrintType Data.Morpheus.CodeGen.Internal.AST.CodeGenTypeName instance Data.Morpheus.CodeGen.TH.PrintType Data.Morpheus.CodeGen.Internal.AST.AssociatedType instance Data.Morpheus.CodeGen.TH.PrintExp Data.Morpheus.CodeGen.Internal.AST.TypeValue instance Data.Morpheus.CodeGen.TH.PrintExp Data.Morpheus.CodeGen.Internal.AST.PrintableValue instance Data.Morpheus.CodeGen.TH.Apply Language.Haskell.TH.Lib.Internal.TypeQ instance Data.Morpheus.CodeGen.TH.Apply Language.Haskell.TH.Syntax.Type instance Data.Morpheus.CodeGen.TH.Apply Language.Haskell.TH.Syntax.Exp instance Data.Morpheus.CodeGen.TH.Apply Language.Haskell.TH.Lib.Internal.ExpQ instance Data.Morpheus.CodeGen.TH.ToVar a b => Data.Morpheus.CodeGen.TH.ToVar a (Language.Haskell.TH.Syntax.Q b) instance Data.Morpheus.CodeGen.TH.ToName a => Data.Morpheus.CodeGen.TH.ToVar a Language.Haskell.TH.Syntax.Type instance Data.Morpheus.CodeGen.TH.ToName a => Data.Morpheus.CodeGen.TH.ToVar a Language.Haskell.TH.Syntax.Exp instance Data.Morpheus.CodeGen.TH.ToName a => Data.Morpheus.CodeGen.TH.ToVar a Language.Haskell.TH.Syntax.Pat instance Data.Morpheus.CodeGen.TH.ToCon a b => Data.Morpheus.CodeGen.TH.ToCon a (Language.Haskell.TH.Syntax.Q b) instance Data.Morpheus.CodeGen.TH.ToName a => Data.Morpheus.CodeGen.TH.ToCon a Language.Haskell.TH.Syntax.Type instance Data.Morpheus.CodeGen.TH.ToName a => Data.Morpheus.CodeGen.TH.ToCon a Language.Haskell.TH.Syntax.Exp instance Data.Morpheus.CodeGen.TH.ToName a => Data.Morpheus.CodeGen.TH.ToCon a Language.Haskell.TH.Syntax.Pat instance Data.Morpheus.CodeGen.TH.ToString a b => Data.Morpheus.CodeGen.TH.ToString a (Language.Haskell.TH.Syntax.Q b) instance Data.Morpheus.CodeGen.TH.ToString Data.Morpheus.Types.Internal.AST.Name.TypeName Language.Haskell.TH.Syntax.Lit instance Data.Morpheus.CodeGen.TH.ToString Data.Morpheus.Types.Internal.AST.Name.TypeName Language.Haskell.TH.Syntax.Pat instance Data.Morpheus.CodeGen.TH.ToString Data.Morpheus.Types.Internal.AST.Name.FieldName Language.Haskell.TH.Syntax.Lit instance Data.Morpheus.CodeGen.TH.ToString Data.Morpheus.Types.Internal.AST.Name.TypeName Language.Haskell.TH.Syntax.Exp instance Data.Morpheus.CodeGen.TH.ToString Data.Morpheus.Types.Internal.AST.Name.FieldName Language.Haskell.TH.Syntax.Exp instance Data.Morpheus.CodeGen.TH.ToName GHC.Base.String instance Data.Morpheus.CodeGen.TH.ToName Language.Haskell.TH.Syntax.Name instance Data.Morpheus.CodeGen.TH.ToName Data.Text.Internal.Text instance Data.Morpheus.CodeGen.TH.ToName Data.Morpheus.Types.Internal.AST.Name.TypeName instance Data.Morpheus.CodeGen.TH.ToName Data.Morpheus.Types.Internal.AST.Name.FieldName instance Data.Morpheus.CodeGen.TH.ToName Data.Morpheus.CodeGen.Internal.AST.CodeGenTypeName instance Data.Morpheus.CodeGen.TH.ToName Data.Morpheus.Types.Internal.AST.DirectiveLocation.DirectiveLocation