-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Simple Haskell formatting -- -- String formatting @package hformat @version 0.3.3.0 module Text.Format.Flags type FormatFlags = [String] getFlag :: (String -> Maybe a) -> [String] -> Maybe a hasFlag :: String -> [String] -> Bool baseFlag :: (Read a, Integral a) => [String] -> a preciseFlag :: [String] -> Maybe Int -- | Format string with named args -- --
--   -- Named args
--   "My name is {name}, I am {age} years old" ~~ ("name" ~% "Joe") ~~ ("age" ~% 24) ≡ "My name is Joe, I am 24 years old"
--   -- Arg can have default value
--   "{var:x} = {val:10}" ~~ ("var" ~% y) ≡ "y = 10"
--   -- Numeric position can be used
--   "{0} {1} {0}" ~~ "foo" ~~ "bar" ≡ "foo bar foo"
--   -- Positions can be omitted
--   "{} {}" ~~ "foo" ~~ 10 ≡ "foo 10"
--   -- Double braces to escape them
--   "{} and {{}}" ~~ 10 ≡ "10 and {}"
--   
module Text.Format data FormattedPart FormattedPart :: FormatFlags -> String -> FormattedPart [formattedFlags] :: FormattedPart -> FormatFlags [formattedValue] :: FormattedPart -> String newtype Formatted Formatted :: [FormattedPart] -> Formatted [formattedParts] :: Formatted -> [FormattedPart] withFlags :: String -> [String] -> Formatted data FormatArg FormatNamed :: String -> ([String] -> Formatted) -> FormatArg FormatPos :: ([String] -> Formatted) -> FormatArg data Format Format :: String -> [FormatArg] -> Format [formatString] :: Format -> String [formatArgs] :: Format -> [FormatArg] data Formatter Formatter :: Either String Int -> Maybe String -> [String] -> Formatter [formatter] :: Formatter -> Either String Int [formatterDefault] :: Formatter -> Maybe String [formatterFlags] :: Formatter -> [String] prebuild :: Format -> Formatted build :: Format -> Formatted getNamedArguments :: Format -> [String] -- | Formattable class, by default using show class Formattable a formattable :: Formattable a => a -> FormatFlags -> Formatted formattable :: (Formattable a, Show a) => a -> FormatFlags -> Formatted class Hole a hole :: Hole a => a -> [FormatArg] fmt :: Formattable a => a -> FormatArg class FormatResult r formatResult :: FormatResult r => Format -> r format :: FormatResult r => String -> r formats :: FormatResult r => String -> [FormatArg] -> r (~~) :: (Hole a, FormatResult r) => Format -> a -> r infixl 7 ~~ (~%) :: Formattable a => String -> a -> FormatArg infixr 8 ~% instance GHC.Show.Show Text.Format.Formatted instance GHC.Classes.Ord Text.Format.Formatted instance GHC.Classes.Eq Text.Format.Formatted instance GHC.Show.Show Text.Format.FormattedPart instance GHC.Classes.Ord Text.Format.FormattedPart instance GHC.Classes.Eq Text.Format.FormattedPart instance Text.Format.FormatResult Text.Format.Format instance Text.Format.FormatResult GHC.Base.String instance Data.String.IsString s => Text.Format.FormatResult s instance Text.Format.FormatResult Text.Format.Formatted instance Text.Format.Hole Text.Format.Formatted instance Text.Format.Hole Text.Format.FormatArg instance Text.Format.Hole [Text.Format.FormatArg] instance Text.Format.Hole [[Text.Format.FormatArg]] instance Text.Format.Formattable a => Text.Format.Hole a instance Text.Format.Formattable GHC.Base.String instance Text.Format.Formattable GHC.Types.Char instance Text.Format.Formattable GHC.Types.Int instance Text.Format.Formattable GHC.Integer.Type.Integer instance Text.Format.Formattable GHC.Types.Double instance Text.Format.Formattable GHC.Types.Float instance Text.Format.Formattable GHC.Types.Bool instance Text.Format.Formattable Data.Text.Internal.Lazy.Text instance Text.Format.Formattable Data.Text.Internal.Text instance Text.Format.Formattable Text.Format.Formatter instance GHC.Show.Show Text.Format.Formatter instance GHC.Read.Read Text.Format.Formatter instance GHC.Show.Show Text.Format.Format instance Data.String.IsString Text.Format.Format instance Data.String.IsString Text.Format.Formatted instance GHC.Base.Semigroup Text.Format.Formatted instance GHC.Base.Monoid Text.Format.Formatted instance Data.String.IsString Text.Format.FormattedPart module Text.Format.Colored colored :: Formatted -> IO () coloredLine :: Formatted -> IO () hColored :: Handle -> Formatted -> IO () hColoredLine :: Handle -> Formatted -> IO ()