symantic-6.3.0.20170807: Library for Typed Tagless-Final Higher-Order Composable DSL

Safe HaskellNone
LanguageHaskell2010

Language.Symantic.Typing.Document

Contents

Synopsis

Type Config_Doc_Type

data Config_Doc_Type Source #

Constructors

Config_Doc_Type 

Fields

Document Type

docType :: forall src vs t d. Semigroup d => Doc_Text d => Doc_Color d => Config_Doc_Type -> Precedence -> Type src vs t -> d Source #

var2Name :: Config_Doc_Type -> (Map IndexVar Name, Names) -> Type src vs t -> (Map IndexVar Name, Names) Source #

Return a Map associating a distinct Name for all the variables of the given Type.

Type Names

freshifyName :: Names -> Name -> Name Source #

Return given Name renamed a bit to avoid conflicting with any given Names.

poolNames :: [Name] Source #

Infinite list of unique Names: a, b, .., z, a1, b1 .., z1, a2, ..

Document Types

docTypes :: forall src vs ts d. Semigroup d => Doc_Text d => Doc_Color d => Config_Doc_Type -> Types src vs ts -> d Source #

Document Const

docConst :: Doc_Text d => Imports NameTy -> Const src c -> d Source #

Document NameTy

Document Mod

docMod :: Doc_Text d => (a -> d) -> Mod a -> d Source #

Document PathMod