base-3.0.1.0: Basic librariesSource codeContentsIndex
Text.Printf
Portabilityportable
Stabilityprovisional
Maintainerlennart@augustsson.net
Description
A C printf like formatter.
Synopsis
printf :: PrintfType r => String -> r
hPrintf :: HPrintfType r => Handle -> String -> r
class PrintfType t
class HPrintfType t
class PrintfArg a
class IsChar c
Documentation
printf :: PrintfType r => String -> rSource

Format a variable number of arguments with the C-style formatting string. The return value is either String or (IO a).

The format string consists of ordinary characters and conversion specifications, which specify how to format one of the arguments to printf in the output string. A conversion specification begins with the character %, followed by one or more of the following flags:

    -      left adjust (default is right adjust)
    +      always use a sign (+ or -) for signed conversions
    0      pad with zeroes rather than spaces

followed optionally by a field width:

    num    field width
    *      as num, but taken from argument list

followed optionally by a precision:

    .num   precision (number of decimal places)

and finally, a format character:

    c      character               Char, Int, Integer, ...
    d      decimal                 Char, Int, Integer, ...
    o      octal                   Char, Int, Integer, ...
    x      hexadecimal             Char, Int, Integer, ...
    X      hexadecimal             Char, Int, Integer, ...
    u      unsigned decimal        Char, Int, Integer, ...
    f      floating point          Float, Double
    g      general format float    Float, Double
    G      general format float    Float, Double
    e      exponent format float   Float, Double
    E      exponent format float   Float, Double
    s      string                  String

Mismatch between the argument types and the format string will cause an exception to be thrown at runtime.

Examples:

   > printf "%d\n" (23::Int)
   23
   > printf "%s %s\n" "Hello" "World"
   Hello World
   > printf "%.2f\n" pi
   3.14
hPrintf :: HPrintfType r => Handle -> String -> rSource
Similar to printf, except that output is via the specified Handle. The return type is restricted to (IO a).
class PrintfType t Source
The PrintfType class provides the variable argument magic for printf. Its implementation is intentionally not visible from this module. If you attempt to pass an argument of a type which is not an instance of this class to printf or hPrintf, then the compiler will report it as a missing instance of PrintfArg.
show/hide Instances
class HPrintfType t Source
The HPrintfType class provides the variable argument magic for hPrintf. Its implementation is intentionally not visible from this module.
show/hide Instances
class PrintfArg a Source
show/hide Instances
class IsChar c Source
show/hide Instances
Produced by Haddock version 0.8