-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Document symantics. -- -- Symantics for generating documents. @package symantic-document @version 1.2.3.20190628 module Symantic.Document.API type Column = Natural type Indent = Column type Width = Natural newtype Line d Line :: d -> Line d unLine :: Line d -> d newtype Word d Word :: d -> Word d unWord :: Word d -> d class From a d from :: From a d => a -> d from :: (From a d, From String d) => Show a => a -> d runTextBuilder :: Builder -> Text class Lengthable d width :: Lengthable d => d -> Column nullWidth :: Lengthable d => d -> Bool class Monoid d => Spaceable d newline :: Spaceable d => d space :: Spaceable d => d newline :: (Spaceable d, Spaceable (UnTrans d)) => Trans d => d space :: (Spaceable d, Spaceable (UnTrans d)) => Trans d => d -- |
--   spaces ind = replicate ind space
--   
spaces :: Spaceable d => Column -> d -- |
--   spaces ind = replicate ind space
--   
spaces :: (Spaceable d, Monoid d) => Column -> d unlines :: (Spaceable d, Foldable f) => f (Line d) -> d unwords :: (Spaceable d, Foldable f) => Functor f => f (Word d) -> d -- | Like unlines but without the trailing newline. catLines :: (Spaceable d, Foldable f) => Functor f => f (Line d) -> d -- |
--   x <+> y = x <> space <> y
--   
(<+>) :: Spaceable d => d -> d -> d -- |
--   x </> y = x <> newline <> y
--   
() :: Spaceable d => d -> d -> d catH :: (Spaceable d, Foldable f) => f d -> d catV :: (Spaceable d, Foldable f) => f d -> d infixr 6 infixr 6 <+> intercalate :: (Foldable f, Monoid d) => d -> f d -> d replicate :: Monoid d => Int -> d -> d between :: Semigroup d => d -> d -> d -> d parens :: Semigroup d => From (Word Char) d => d -> d braces :: Semigroup d => From (Word Char) d => d -> d brackets :: Semigroup d => From (Word Char) d => d -> d angles :: Semigroup d => From (Word Char) d => d -> d class (Lengthable d, Monoid d) => Splitable d tail :: Splitable d => d -> Maybe d break :: Splitable d => (Char -> Bool) -> d -> (d, d) span :: Splitable d => (Char -> Bool) -> d -> (d, d) lines :: Splitable d => d -> [Line d] words :: Splitable d => d -> [Word d] linesNoEmpty :: Splitable d => d -> [Line d] wordsNoEmpty :: Splitable d => d -> [Word d] splitOnChar :: Splitable d => (Char -> Bool) -> d -> [d] splitOnCharNoEmpty :: Splitable d => (Char -> Bool) -> d -> [d] class Decorable d bold :: Decorable d => d -> d underline :: Decorable d => d -> d italic :: Decorable d => d -> d bold :: (Decorable d, Decorable (UnTrans d)) => Trans d => d -> d underline :: (Decorable d, Decorable (UnTrans d)) => Trans d => d -> d italic :: (Decorable d, Decorable (UnTrans d)) => Trans d => d -> d class Colorable16 d reverse :: Colorable16 d => d -> d black :: Colorable16 d => d -> d red :: Colorable16 d => d -> d green :: Colorable16 d => d -> d yellow :: Colorable16 d => d -> d blue :: Colorable16 d => d -> d magenta :: Colorable16 d => d -> d cyan :: Colorable16 d => d -> d white :: Colorable16 d => d -> d blacker :: Colorable16 d => d -> d redder :: Colorable16 d => d -> d greener :: Colorable16 d => d -> d yellower :: Colorable16 d => d -> d bluer :: Colorable16 d => d -> d magentaer :: Colorable16 d => d -> d cyaner :: Colorable16 d => d -> d whiter :: Colorable16 d => d -> d onBlack :: Colorable16 d => d -> d onRed :: Colorable16 d => d -> d onGreen :: Colorable16 d => d -> d onYellow :: Colorable16 d => d -> d onBlue :: Colorable16 d => d -> d onMagenta :: Colorable16 d => d -> d onCyan :: Colorable16 d => d -> d onWhite :: Colorable16 d => d -> d onBlacker :: Colorable16 d => d -> d onRedder :: Colorable16 d => d -> d onGreener :: Colorable16 d => d -> d onYellower :: Colorable16 d => d -> d onBluer :: Colorable16 d => d -> d onMagentaer :: Colorable16 d => d -> d onCyaner :: Colorable16 d => d -> d onWhiter :: Colorable16 d => d -> d reverse :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d black :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d red :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d green :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d yellow :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d blue :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d magenta :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d cyan :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d white :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d blacker :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d redder :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d greener :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d yellower :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d bluer :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d magentaer :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d cyaner :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d whiter :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onBlack :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onRed :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onGreen :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onYellow :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onBlue :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onMagenta :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onCyan :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onWhite :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onBlacker :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onRedder :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onGreener :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onYellower :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onBluer :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onMagentaer :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onCyaner :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d onWhiter :: (Colorable16 d, Colorable16 (UnTrans d)) => Trans d => d -> d -- | For debugging purposes. xmlSGR :: Semigroup d => From String d => String -> d -> d class Spaceable d => Indentable d -- | (align d) make d uses current Column -- as Indent level. align :: Indentable d => d -> d -- | (incrIndent ind d) make d uses current -- Indent plus ind as Indent level. incrIndent :: Indentable d => Indent -> d -> d -- | (setIndent ind d) make d uses ind as -- Indent level. setIndent :: Indentable d => Indent -> d -> d -- | (hang ind d) make d uses current -- Column plus ind as Indent level. hang :: Indentable d => Indent -> d -> d -- | (fill w d) write d, then if d is not -- wider than w, write the difference with spaces. fill :: Indentable d => Width -> d -> d -- | (breakfill w d) write d, then if d -- is not wider than w, write the difference with spaces -- otherwise write a newline indented to to the start -- Column of d plus w. breakfill :: Indentable d => Width -> d -> d -- | (align d) make d uses current Column -- as Indent level. align :: (Indentable d, Indentable (UnTrans d)) => Trans d => d -> d -- | (incrIndent ind d) make d uses current -- Indent plus ind as Indent level. incrIndent :: (Indentable d, Indentable (UnTrans d)) => Trans d => Indent -> d -> d -- | (setIndent ind d) make d uses ind as -- Indent level. setIndent :: (Indentable d, Indentable (UnTrans d)) => Trans d => Indent -> d -> d -- | (fill w d) write d, then if d is not -- wider than w, write the difference with spaces. fill :: (Indentable d, Indentable (UnTrans d)) => Trans d => Width -> d -> d -- | (breakfill w d) write d, then if d -- is not wider than w, write the difference with spaces -- otherwise write a newline indented to to the start -- Column of d plus w. breakfill :: (Indentable d, Indentable (UnTrans d)) => Trans d => Width -> d -> d class Listable d ul :: (Listable d, Traversable f) => f d -> d ol :: (Listable d, Traversable f) => f d -> d ul :: (Listable d, Listable (UnTrans d)) => Trans d => Traversable f => f d -> d ol :: (Listable d, Listable (UnTrans d)) => Trans d => Traversable f => f d -> d class Wrappable d setWidth :: Wrappable d => Maybe Width -> d -> d breakpoint :: Wrappable d => d breakspace :: Wrappable d => d breakalt :: Wrappable d => d -> d -> d breakpoint :: (Wrappable d, Wrappable (UnTrans d)) => Trans d => d breakspace :: (Wrappable d, Wrappable (UnTrans d)) => Trans d => d breakalt :: (Wrappable d, Wrappable (UnTrans d)) => Trans d => d -> d -> d class Justifiable d justify :: Justifiable d => d -> d class Trans repr where { -- | Return the underlying repr of the transformer. type family UnTrans repr :: *; } -- | Lift a repr to the transformer's. noTrans :: Trans repr => UnTrans repr -> repr -- | Unlift a repr from the transformer's. unTrans :: Trans repr => repr -> UnTrans repr -- | Identity transformation for a unary symantic method. noTrans1 :: Trans repr => (UnTrans repr -> UnTrans repr) -> repr -> repr -- | Identity transformation for a binary symantic method. noTrans2 :: Trans repr => (UnTrans repr -> UnTrans repr -> UnTrans repr) -> repr -> repr -> repr -- | Identity transformation for a ternary symantic method. noTrans3 :: Trans repr => (UnTrans repr -> UnTrans repr -> UnTrans repr -> UnTrans repr) -> repr -> repr -> repr -> repr instance GHC.Base.Semigroup d => GHC.Base.Semigroup (Symantic.Document.API.Word d) instance GHC.Show.Show d => GHC.Show.Show (Symantic.Document.API.Word d) instance GHC.Classes.Eq d => GHC.Classes.Eq (Symantic.Document.API.Word d) instance GHC.Show.Show d => GHC.Show.Show (Symantic.Document.API.Line d) instance GHC.Classes.Eq d => GHC.Classes.Eq (Symantic.Document.API.Line d) instance Symantic.Document.API.Spaceable GHC.Base.String instance Symantic.Document.API.Spaceable Data.Text.Internal.Text instance Symantic.Document.API.Spaceable Data.Text.Internal.Builder.Builder instance Symantic.Document.API.Colorable16 GHC.Base.String instance Symantic.Document.API.Splitable GHC.Base.String instance Symantic.Document.API.Splitable Data.Text.Internal.Text instance Symantic.Document.API.Splitable Data.Text.Internal.Lazy.Text instance Symantic.Document.API.Lengthable GHC.Types.Char instance Symantic.Document.API.Lengthable GHC.Base.String instance Symantic.Document.API.Lengthable Data.Text.Internal.Text instance Symantic.Document.API.Lengthable Data.Text.Internal.Lazy.Text instance Symantic.Document.API.Lengthable d => Symantic.Document.API.Lengthable (Symantic.Document.API.Line d) instance Symantic.Document.API.Lengthable d => Symantic.Document.API.Lengthable (Symantic.Document.API.Word d) instance Symantic.Document.API.From [System.Console.ANSI.Types.SGR] d => Symantic.Document.API.From [System.Console.ANSI.Types.SGR] (Symantic.Document.API.Word d) instance Symantic.Document.API.From (Symantic.Document.API.Line GHC.Base.String) d => Symantic.Document.API.From GHC.Types.Int d instance Symantic.Document.API.From (Symantic.Document.API.Line GHC.Base.String) d => Symantic.Document.API.From GHC.Integer.Type.Integer d instance Symantic.Document.API.From (Symantic.Document.API.Line GHC.Base.String) d => Symantic.Document.API.From GHC.Natural.Natural d instance Symantic.Document.API.From GHC.Types.Char GHC.Base.String instance Symantic.Document.API.From GHC.Base.String GHC.Base.String instance Symantic.Document.API.From Data.Text.Internal.Text GHC.Base.String instance Symantic.Document.API.From Data.Text.Internal.Lazy.Text GHC.Base.String instance Symantic.Document.API.From d GHC.Base.String => Symantic.Document.API.From (Symantic.Document.API.Line d) GHC.Base.String instance Symantic.Document.API.From d GHC.Base.String => Symantic.Document.API.From (Symantic.Document.API.Word d) GHC.Base.String instance Symantic.Document.API.From [System.Console.ANSI.Types.SGR] GHC.Base.String instance Symantic.Document.API.From GHC.Types.Char Data.Text.Internal.Text instance Symantic.Document.API.From GHC.Base.String Data.Text.Internal.Text instance Symantic.Document.API.From Data.Text.Internal.Text Data.Text.Internal.Text instance Symantic.Document.API.From Data.Text.Internal.Lazy.Text Data.Text.Internal.Text instance Symantic.Document.API.From d Data.Text.Internal.Text => Symantic.Document.API.From (Symantic.Document.API.Line d) Data.Text.Internal.Text instance Symantic.Document.API.From d Data.Text.Internal.Text => Symantic.Document.API.From (Symantic.Document.API.Word d) Data.Text.Internal.Text instance Symantic.Document.API.From [System.Console.ANSI.Types.SGR] Data.Text.Internal.Text instance Symantic.Document.API.From GHC.Types.Char Data.Text.Internal.Builder.Builder instance Symantic.Document.API.From GHC.Base.String Data.Text.Internal.Builder.Builder instance Symantic.Document.API.From Data.Text.Internal.Text Data.Text.Internal.Builder.Builder instance Symantic.Document.API.From Data.Text.Internal.Lazy.Text Data.Text.Internal.Builder.Builder instance Symantic.Document.API.From Data.Text.Internal.Builder.Builder Data.Text.Internal.Builder.Builder instance Symantic.Document.API.From d Data.Text.Internal.Builder.Builder => Symantic.Document.API.From (Symantic.Document.API.Line d) Data.Text.Internal.Builder.Builder instance Symantic.Document.API.From d Data.Text.Internal.Builder.Builder => Symantic.Document.API.From (Symantic.Document.API.Word d) Data.Text.Internal.Builder.Builder instance Symantic.Document.API.From [System.Console.ANSI.Types.SGR] Data.Text.Internal.Builder.Builder module Symantic.Document.AnsiText newtype AnsiText d AnsiText :: Reader [SGR] d -> AnsiText d [unAnsiText] :: AnsiText d -> Reader [SGR] d ansiText :: AnsiText d -> AnsiText d runAnsiText :: AnsiText d -> d ansiTextSGR :: Semigroup d => From [SGR] d => SGR -> AnsiText d -> AnsiText d -- | Drop Colorable16 and Decorable. newtype PlainText d PlainText :: d -> PlainText d [unPlainText] :: PlainText d -> d plainText :: PlainText d -> PlainText d runPlainText :: PlainText d -> d plainTextSGR :: Semigroup d => PlainText d -> PlainText d instance GHC.Show.Show d => GHC.Show.Show (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.From GHC.Types.Char d => Symantic.Document.API.From GHC.Types.Char (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.From GHC.Base.String d => Symantic.Document.API.From GHC.Base.String (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.From Data.Text.Internal.Text d => Symantic.Document.API.From Data.Text.Internal.Text (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.From Data.Text.Internal.Lazy.Text d => Symantic.Document.API.From Data.Text.Internal.Lazy.Text (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.From s (Symantic.Document.AnsiText.PlainText d) => Symantic.Document.API.From (Symantic.Document.API.Line s) (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.From s (Symantic.Document.AnsiText.PlainText d) => Symantic.Document.API.From (Symantic.Document.API.Word s) (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.From GHC.Base.String d => Data.String.IsString (Symantic.Document.AnsiText.PlainText d) instance GHC.Base.Semigroup d => GHC.Base.Semigroup (Symantic.Document.AnsiText.PlainText d) instance GHC.Base.Monoid d => GHC.Base.Monoid (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.Lengthable d => Symantic.Document.API.Lengthable (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.Spaceable d => Symantic.Document.API.Spaceable (Symantic.Document.AnsiText.PlainText d) instance GHC.Base.Semigroup d => Symantic.Document.API.Colorable16 (Symantic.Document.AnsiText.PlainText d) instance GHC.Base.Semigroup d => Symantic.Document.API.Decorable (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.Justifiable d => Symantic.Document.API.Justifiable (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.Indentable d => Symantic.Document.API.Indentable (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.Listable d => Symantic.Document.API.Listable (Symantic.Document.AnsiText.PlainText d) instance Symantic.Document.API.Wrappable d => Symantic.Document.API.Wrappable (Symantic.Document.AnsiText.PlainText d) instance GHC.Show.Show d => GHC.Show.Show (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.From GHC.Types.Char d => Symantic.Document.API.From GHC.Types.Char (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.From GHC.Base.String d => Symantic.Document.API.From GHC.Base.String (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.From Data.Text.Internal.Text d => Symantic.Document.API.From Data.Text.Internal.Text (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.From Data.Text.Internal.Lazy.Text d => Symantic.Document.API.From Data.Text.Internal.Lazy.Text (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.From s (Symantic.Document.AnsiText.AnsiText d) => Symantic.Document.API.From (Symantic.Document.API.Line s) (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.From s (Symantic.Document.AnsiText.AnsiText d) => Symantic.Document.API.From (Symantic.Document.API.Word s) (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.From GHC.Base.String d => Data.String.IsString (Symantic.Document.AnsiText.AnsiText d) instance GHC.Base.Semigroup d => GHC.Base.Semigroup (Symantic.Document.AnsiText.AnsiText d) instance GHC.Base.Monoid d => GHC.Base.Monoid (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.Lengthable d => Symantic.Document.API.Lengthable (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.Spaceable d => Symantic.Document.API.Spaceable (Symantic.Document.AnsiText.AnsiText d) instance (GHC.Base.Semigroup d, Symantic.Document.API.From [System.Console.ANSI.Types.SGR] d) => Symantic.Document.API.Colorable16 (Symantic.Document.AnsiText.AnsiText d) instance (GHC.Base.Semigroup d, Symantic.Document.API.From [System.Console.ANSI.Types.SGR] d) => Symantic.Document.API.Decorable (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.Justifiable d => Symantic.Document.API.Justifiable (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.Indentable d => Symantic.Document.API.Indentable (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.Listable d => Symantic.Document.API.Listable (Symantic.Document.AnsiText.AnsiText d) instance Symantic.Document.API.Wrappable d => Symantic.Document.API.Wrappable (Symantic.Document.AnsiText.AnsiText d) module Symantic.Document.Plain -- | Church encoded for performance concerns. Kind like ParsecT in -- megaparsec but a little bit different due to the use of -- PlainFit for implementing breakingSpace correctly when -- in the left hand side of (<>). Prepending is done using -- continuation, like in a difference list. newtype Plain d Plain :: (PlainInh -> PlainState d -> ((d -> d, PlainState d) -> PlainFit d) -> PlainFit d) -> Plain d [unPlain] :: Plain d -> PlainInh -> PlainState d -> ((d -> d, PlainState d) -> PlainFit d) -> PlainFit d runPlain :: Monoid d => Plain d -> d data PlainState d PlainState :: ![PlainChunk d] -> !Column -> !Width -> !Indent -> PlainState d [plainState_buffer] :: PlainState d -> ![PlainChunk d] -- | The Column from which the plainState_buffer must be -- written. [plainState_bufferStart] :: PlainState d -> !Column -- | The Width of the plainState_buffer so far. [plainState_bufferWidth] :: PlainState d -> !Width -- | The amount of Indent added by breakspace that can be -- removed by breaking the space into a newlineJustifying. [plainState_removableIndent] :: PlainState d -> !Indent defPlainState :: PlainState d data PlainInh PlainInh :: !Maybe Column -> !Bool -> !Width -> PlainInh [plainInh_width] :: PlainInh -> !Maybe Column [plainInh_justify] :: PlainInh -> !Bool [plainInh_indent] :: PlainInh -> !Width defPlainInh :: PlainInh -- | Double continuation to qualify the returned document as fitting or -- overflowing the given plainInh_width. It's like -- (Bool,d) in a normal style (a non -- continuation-passing-style). type PlainFit d = (d -> d) -> (d -> d) -> d data PlainChunk d -- | Ignored by the justification but kept in place. Used for instance to -- put ANSI sequences. PlainChunk_Ignored :: d -> PlainChunk d PlainChunk_Word :: Word d -> PlainChunk d -- | spaces preserved to be interleaved correctly with -- PlainChunk_Ignored. PlainChunk_Spaces :: Width -> PlainChunk d runPlainChunk :: Spaceable d => PlainChunk d -> d -- | Commit plainState_buffer upto there, so that it won't be -- justified. flushLine :: Spaceable d => Plain d collapseSpaces :: PlainChunk d -> PlainChunk d -- | Like newline, but justify plainState_buffer before. newlineJustifying :: Spaceable d => Plain d joinLine :: Spaceable d => PlainInh -> PlainState d -> d -- | (countWords ps) returns the number of words in -- (ps) clearly separated by spaces. countWords :: [PlainChunk d] -> Natural -- | (justifyPadding a b) returns the padding lengths to -- reach (a) in (b) pads, using the formula: (a -- == m*(q + q+1) + -- ('r'-'m)*(q+1) + (b'-'r'-'m)*q) where -- (q+1) and (q) are the two padding lengths used and -- (m = min (b-r) r). -- -- A simple implementation of justifyPadding could be: -- justifyPadding a b = join (replicate m -- [q,q+1]) <> (replicate (r-m) (q+1) -- <> (replicate ((b-r)-m) q where (q,r) = -- adivModb m = min (b-r) r justifyPadding :: Natural -> Natural -> [Natural] padPlainLineInits :: Spaceable d => Width -> (Natural, Natural, [PlainChunk d]) -> Line d -- | Just concat PlainChunks with no justification. joinPlainLine :: Monoid d => Spaceable d => [PlainChunk d] -> d -- | Interleave PlainChunks with Widths from -- justifyPadding. padPlainLine :: Spaceable d => [PlainChunk d] -> [Width] -> d instance GHC.Show.Show d => GHC.Show.Show (Symantic.Document.Plain.PlainState d) instance GHC.Show.Show Symantic.Document.Plain.PlainInh instance (GHC.Show.Show d, GHC.Base.Monoid d) => GHC.Show.Show (Symantic.Document.Plain.Plain d) instance GHC.Base.Semigroup d => GHC.Base.Semigroup (Symantic.Document.Plain.Plain d) instance GHC.Base.Monoid d => GHC.Base.Monoid (Symantic.Document.Plain.Plain d) instance Symantic.Document.API.Spaceable d => Symantic.Document.API.Spaceable (Symantic.Document.Plain.Plain d) instance (Symantic.Document.API.From (Symantic.Document.API.Word s) d, GHC.Base.Semigroup d, Symantic.Document.API.Lengthable s) => Symantic.Document.API.From (Symantic.Document.API.Word s) (Symantic.Document.Plain.Plain d) instance (Symantic.Document.API.From (Symantic.Document.API.Word s) d, Symantic.Document.API.Lengthable s, Symantic.Document.API.Spaceable d, Symantic.Document.API.Splitable s) => Symantic.Document.API.From (Symantic.Document.API.Line s) (Symantic.Document.Plain.Plain d) instance Symantic.Document.API.Spaceable d => Symantic.Document.API.Indentable (Symantic.Document.Plain.Plain d) instance (Symantic.Document.API.Spaceable d, Symantic.Document.API.From (Symantic.Document.API.Word GHC.Types.Char) d, Symantic.Document.API.From (Symantic.Document.API.Word GHC.Base.String) d) => Symantic.Document.API.Listable (Symantic.Document.Plain.Plain d) instance Symantic.Document.API.Spaceable d => Symantic.Document.API.Justifiable (Symantic.Document.Plain.Plain d) instance Symantic.Document.API.Spaceable d => Symantic.Document.API.Wrappable (Symantic.Document.Plain.Plain d) instance (Symantic.Document.API.From (Symantic.Document.API.Word GHC.Base.String) d, Symantic.Document.API.Spaceable d) => Symantic.Document.API.From GHC.Base.String (Symantic.Document.Plain.Plain d) instance (Symantic.Document.API.From (Symantic.Document.API.Word GHC.Base.String) d, Symantic.Document.API.Spaceable d) => Data.String.IsString (Symantic.Document.Plain.Plain d) instance (Symantic.Document.API.From (Symantic.Document.API.Word Data.Text.Internal.Text) d, Symantic.Document.API.Spaceable d) => Symantic.Document.API.From Data.Text.Internal.Text (Symantic.Document.Plain.Plain d) instance (Symantic.Document.API.From (Symantic.Document.API.Word Data.Text.Internal.Lazy.Text) d, Symantic.Document.API.Spaceable d) => Symantic.Document.API.From Data.Text.Internal.Lazy.Text (Symantic.Document.Plain.Plain d) instance (Symantic.Document.API.From (Symantic.Document.API.Word GHC.Types.Char) d, Symantic.Document.API.Spaceable d) => Symantic.Document.API.From GHC.Types.Char (Symantic.Document.Plain.Plain d) instance (Symantic.Document.API.From [System.Console.ANSI.Types.SGR] d, GHC.Base.Semigroup d) => Symantic.Document.API.From [System.Console.ANSI.Types.SGR] (Symantic.Document.Plain.Plain d) instance GHC.Show.Show d => GHC.Show.Show (Symantic.Document.Plain.PlainChunk d) instance Symantic.Document.API.Lengthable d => Symantic.Document.API.Lengthable (Symantic.Document.Plain.PlainChunk d) instance Symantic.Document.API.From [System.Console.ANSI.Types.SGR] d => Symantic.Document.API.From [System.Console.ANSI.Types.SGR] (Symantic.Document.Plain.PlainChunk d) module Symantic.Document