haskell-src-exts-1.24.0: tests/examples/HaddockComments.hs
{-|
Module : W
Description : Short description
Copyright : (c) Some Guy, 2013
Someone Else, 2014
License : GPL-3
Maintainer : sample@email.com
Stability : experimental
Portability : POSIX
Here is a longer description of this module, containing some
commentary with @some markup@.
-}
module HaddockComments where
-- | Function1 comment
fun1
:: Int -- ^ The 'Int' argument
-> Float -- ^ The 'Float' argument
-> IO () -- ^ The return value
fun1 = undefined
-- not a haddock comment
fun2 = undefined
fun3 :: Int -> Int
-- ^ Function3 comment
fun3 = undefined
{-|
The 'square' function squares an integer.
It takes one argument, of type 'Int'.
-}
square :: Int -> Int
square x = x * x -- beware!
class C a where
-- | This is the documentation for the 'f' method
f :: a -> Int
-- | This is the documentation for the 'g' method
g :: Int -> a
-- | Data type comment
-- With a second line
data MyData =
-- | Constructor1 comment
Cons1
{ cons1Field1 :: Int -- ^ Constructor 1 field 1 comment
-- spanning two lines
-- | Constructor 1 field 2 comment
, cons1Field2 :: Int
, cons1Field3 :: String -- Not a haddock comment
}
| Cons2 -- ^ Constructor 2 comment
Int -- ^ Last