Safe Haskell | None |
---|---|
Language | Haskell2010 |
Language.PureScript.Pretty.Common
Description
Common pretty-printing utility functions
Synopsis
- parensT :: Text -> Text
- parensPos :: Emit gen => gen -> gen
- intercalate :: Monoid m => m -> [m] -> m
- class Monoid gen => Emit gen where
- emit :: Text -> gen
- addMapping :: SourceSpan -> gen
- data SMap = SMap Text SourcePos SourcePos
- newtype StrPos = StrPos (SourcePos, Text, [SMap])
- newtype PlainString = PlainString Text
- runPlainString :: PlainString -> Text
- addMapping' :: Emit gen => Maybe SourceSpan -> gen
- bumpPos :: SourcePos -> SMap -> SMap
- addPos :: SourcePos -> SourcePos -> SourcePos
- data PrinterState = PrinterState {}
- blockIndent :: Int
- withIndent :: StateT PrinterState Maybe gen -> StateT PrinterState Maybe gen
- currentIndent :: Emit gen => StateT PrinterState Maybe gen
- objectKeyRequiresQuoting :: Text -> Bool
- before :: Box -> Box -> Box
- beforeWithSpace :: Box -> Box -> Box
- endWith :: Box -> Box -> Box
Documentation
intercalate :: Monoid m => m -> [m] -> m #
Generalize intercalate slightly for monoids
class Monoid gen => Emit gen where #
Instances
Emit PlainString # | |
Defined in Language.PureScript.Pretty.Common | |
Emit StrPos # | |
Defined in Language.PureScript.Pretty.Common |
String with length and source-map entries
newtype PlainString #
Constructors
PlainString Text |
Instances
Monoid PlainString # | |
Defined in Language.PureScript.Pretty.Common Methods mempty :: PlainString # mappend :: PlainString -> PlainString -> PlainString # mconcat :: [PlainString] -> PlainString # | |
Semigroup PlainString # | |
Defined in Language.PureScript.Pretty.Common Methods (<>) :: PlainString -> PlainString -> PlainString # sconcat :: NonEmpty PlainString -> PlainString # stimes :: Integral b => b -> PlainString -> PlainString # | |
Emit PlainString # | |
Defined in Language.PureScript.Pretty.Common |
runPlainString :: PlainString -> Text #
addMapping' :: Emit gen => Maybe SourceSpan -> gen #
data PrinterState #
Constructors
PrinterState | |
blockIndent :: Int #
Number of characters per indentation level
withIndent :: StateT PrinterState Maybe gen -> StateT PrinterState Maybe gen #
Pretty print with a new indentation level
currentIndent :: Emit gen => StateT PrinterState Maybe gen #
Get the current indentation level
objectKeyRequiresQuoting :: Text -> Bool #
Place a box before another, vertically when the first box takes up multiple lines.
beforeWithSpace :: Box -> Box -> Box #