From 4ca91adcbd26dfa5f102244f8170c5c74f5200db Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Mon, 8 Feb 2016 14:25:49 +0100 Subject: testsuite: Rework handling of output sanitization Previously un-cleaned artifacts were kept as reference output, making it difficult to tell what has changed and causing spurious changes in the version control history. Here we rework this, cleaning the output during acceptance. To accomplish this it was necessary to move to strict I/O to ensure the reference handle was closed before accept attempts to open the reference file. --- html-test/Main.hs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'html-test') diff --git a/html-test/Main.hs b/html-test/Main.hs index 3880fc3c..02a86d43 100755 --- a/html-test/Main.hs +++ b/html-test/Main.hs @@ -12,7 +12,8 @@ import Test.Haddock.Xhtml checkConfig :: CheckConfig Xml checkConfig = CheckConfig - { ccfgRead = \mdl input -> stripIfRequired mdl <$> parseXml input + { ccfgRead = parseXml + , ccfgClean = stripIfRequired , ccfgDump = dumpXml , ccfgEqual = (==) } -- cgit v1.2.3 From 60b4f394bcd27a097f1a97d460cddc27ead59ba7 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Mon, 8 Feb 2016 15:09:21 +0100 Subject: test: Compare on dump For reasons I don't understand the Xml representations differ despite their textual representations being identical. --- html-test/Main.hs | 3 ++- hypsrc-test/Main.hs | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'html-test') diff --git a/html-test/Main.hs b/html-test/Main.hs index 02a86d43..67dbeec6 100755 --- a/html-test/Main.hs +++ b/html-test/Main.hs @@ -2,6 +2,7 @@ import Data.Char +import Data.Function (on) import System.Environment import System.FilePath @@ -15,7 +16,7 @@ checkConfig = CheckConfig { ccfgRead = parseXml , ccfgClean = stripIfRequired , ccfgDump = dumpXml - , ccfgEqual = (==) + , ccfgEqual = (==) `on` dumpXml } diff --git a/hypsrc-test/Main.hs b/hypsrc-test/Main.hs index 01cc5429..d3ab79a8 100644 --- a/hypsrc-test/Main.hs +++ b/hypsrc-test/Main.hs @@ -3,6 +3,7 @@ import Data.Char import Data.List +import Data.Function (on) import System.Environment import System.FilePath @@ -16,7 +17,7 @@ checkConfig = CheckConfig { ccfgRead = parseXml , ccfgClean = \_ -> strip , ccfgDump = dumpXml - , ccfgEqual = (==) + , ccfgEqual = (==) `on` dumpXml } where strip = stripAnchors' . stripLinks' . stripFooter -- cgit v1.2.3 From 9c23d5d3a21c8ef36204a4d66da4cdf488a08f72 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Mon, 8 Feb 2016 14:32:41 +0100 Subject: html-test: Accept test output --- html-test/ref/A.html | 67 +- html-test/ref/B.html | 65 +- html-test/ref/Bold.html | 33 +- html-test/ref/Bug1.html | 37 +- html-test/ref/Bug195.html | 51 +- html-test/ref/Bug2.html | 29 +- html-test/ref/Bug201.html | 33 +- html-test/ref/Bug253.html | 31 +- html-test/ref/Bug26.html | 57 +- html-test/ref/Bug294.html | 79 +- html-test/ref/Bug298.html | 53 +- html-test/ref/Bug3.html | 33 +- html-test/ref/Bug308.html | 41 +- html-test/ref/Bug308CrossModule.html | 37 +- html-test/ref/Bug310.html | 33 +- html-test/ref/Bug313.html | 35 +- html-test/ref/Bug335.html | 33 +- html-test/ref/Bug387.html | 43 +- html-test/ref/Bug4.html | 33 +- html-test/ref/Bug6.html | 121 +- html-test/ref/Bug7.html | 51 +- html-test/ref/Bug8.html | 67 +- html-test/ref/Bug85.html | 63 +- html-test/ref/BugDeprecated.html | 73 +- html-test/ref/BugExportHeadings.html | 85 +- html-test/ref/Bugs.html | 33 +- html-test/ref/DeprecatedClass.html | 65 +- html-test/ref/DeprecatedData.html | 49 +- html-test/ref/DeprecatedFunction.html | 43 +- html-test/ref/DeprecatedFunction2.html | 33 +- html-test/ref/DeprecatedFunction3.html | 33 +- html-test/ref/DeprecatedModule.html | 33 +- html-test/ref/DeprecatedModule2.html | 29 +- html-test/ref/DeprecatedNewtype.html | 49 +- html-test/ref/DeprecatedReExport.html | 41 +- html-test/ref/DeprecatedRecord.html | 51 +- html-test/ref/DeprecatedTypeFamily.html | 57 +- html-test/ref/DeprecatedTypeSynonym.html | 41 +- html-test/ref/Examples.html | 39 +- html-test/ref/Extensions.html | 29 +- html-test/ref/FunArgs.html | 55 +- html-test/ref/GADTRecords.html | 107 +- html-test/ref/Hash.html | 159 +- html-test/ref/HiddenInstances.html | 97 +- html-test/ref/HiddenInstancesB.html | 41 +- html-test/ref/Hyperlinks.html | 37 +- html-test/ref/IgnoreExports.html | 41 +- html-test/ref/ImplicitParams.html | 51 +- html-test/ref/Instances.html | 1708 ++++++++++++++++++++++ html-test/ref/Math.html | 31 +- html-test/ref/Minimal.html | 125 +- html-test/ref/ModuleWithWarning.html | 33 +- html-test/ref/NamedDoc.html | 25 +- html-test/ref/Nesting.html | 57 +- html-test/ref/NoLayout.html | 35 +- html-test/ref/NonGreedy.html | 33 +- html-test/ref/Operators.html | 177 +-- html-test/ref/OrphanInstances.html | 37 +- html-test/ref/OrphanInstancesClass.html | 33 +- html-test/ref/OrphanInstancesType.html | 33 +- html-test/ref/PatternSyns.html | 115 +- html-test/ref/PromotedTypes.html | 107 +- html-test/ref/Properties.html | 39 +- html-test/ref/PruneWithWarning.html | 25 +- html-test/ref/QuasiExpr.html | 137 +- html-test/ref/QuasiQuote.html | 29 +- html-test/ref/SpuriousSuperclassConstraints.html | 85 +- html-test/ref/TH.html | 27 +- html-test/ref/TH2.html | 27 +- html-test/ref/Test.html | 845 +++++------ html-test/ref/Threaded.html | 33 +- html-test/ref/Threaded_TH.html | 88 ++ html-test/ref/Ticket112.html | 31 +- html-test/ref/Ticket61.html | 37 +- html-test/ref/Ticket75.html | 45 +- html-test/ref/TitledPicture.html | 45 +- html-test/ref/TypeFamilies.html | 671 +++++---- html-test/ref/TypeFamilies2.html | 87 +- html-test/ref/TypeOperators.html | 69 +- html-test/ref/Unicode.html | 33 +- html-test/ref/Visible.html | 31 +- 81 files changed, 4556 insertions(+), 2873 deletions(-) create mode 100644 html-test/ref/Instances.html create mode 100644 html-test/ref/Threaded_TH.html (limited to 'html-test') diff --git a/html-test/ref/A.html b/html-test/ref/A.html index 56c04bc6..73534dc7 100644 --- a/html-test/ref/A.html +++ b/html-test/ref/A.html @@ -1,32 +1,33 @@ - A

test2 :: :: Bool

data X

X +> \ No newline at end of file diff --git a/html-test/ref/B.html b/html-test/ref/B.html index 6176cbeb..cc8f9eef 100644 --- a/html-test/ref/B.html +++ b/html-test/ref/B.html @@ -1,32 +1,33 @@ - B
Synopsis

Documentation

module module A

test :: :: Int

other. These links should work: other, sortBy, test2, test2, fromMaybe. - Module link: Prelude.

reExport :: :: Int

data X

X +> \ No newline at end of file diff --git a/html-test/ref/Bold.html b/html-test/ref/Bold.html index 904d2239..c1f304fd 100644 --- a/html-test/ref/Bold.html +++ b/html-test/ref/Bold.html @@ -1,32 +1,33 @@ - Bold
Synopsis

Documentation

foo :: t

:: a

Some

+> \ No newline at end of file diff --git a/html-test/ref/Bug1.html b/html-test/ref/Bug1.html index 28de3c64..ad864e78 100644 --- a/html-test/ref/Bug1.html +++ b/html-test/ref/Bug1.html @@ -1,32 +1,33 @@ - Bug1
  • data T = = T
  • data T

    We should have different anchors for constructors and types/classes. This hyperlink should point to the type constructor by default: T.

    T 
    +> \ No newline at end of file diff --git a/html-test/ref/Bug195.html b/html-test/ref/Bug195.html index 39816f32..c81cfbb4 100644 --- a/html-test/ref/Bug195.html +++ b/html-test/ref/Bug195.html @@ -1,32 +1,33 @@ - Bug195

    data T

    Methods

    c_f :: ()

    +> \ No newline at end of file diff --git a/html-test/ref/Bug294.html b/html-test/ref/Bug294.html index 59171bd6..8c0f2837 100644 --- a/html-test/ref/Bug294.html +++ b/html-test/ref/Bug294.html @@ -1,32 +1,33 @@ -Bug294
    A 
    B 
    C 
    • someField :: ()
    • someOtherField :: ()
      +> \ No newline at end of file diff --git a/html-test/ref/Bug2.html b/html-test/ref/Bug2.html index c28fb609..1b7f50ff 100644 --- a/html-test/ref/Bug2.html +++ b/html-test/ref/Bug2.html @@ -1,32 +1,33 @@ - Bug2
      Documentation
      +> \ No newline at end of file diff --git a/html-test/ref/Bug201.html b/html-test/ref/Bug201.html index 58bed8e8..06d8ec96 100644 --- a/html-test/ref/Bug201.html +++ b/html-test/ref/Bug201.html @@ -1,32 +1,33 @@ - Bug201
      Synopsis

      • f :: ()
      • g :: ()
      Documentation

      f :: ()

      g :: ()

      +> \ No newline at end of file diff --git a/html-test/ref/Bug253.html b/html-test/ref/Bug253.html index d8e49bd4..2d78880b 100644 --- a/html-test/ref/Bug253.html +++ b/html-test/ref/Bug253.html @@ -1,32 +1,33 @@ - Bug253
      Synopsis

      Documentation

      foo :: ()

      This link should generate #v anchor: fakeFakeFake

      +> \ No newline at end of file diff --git a/html-test/ref/Bug26.html b/html-test/ref/Bug26.html index bdb51231..6537e30b 100644 --- a/html-test/ref/Bug26.html +++ b/html-test/ref/Bug26.html @@ -1,32 +1,33 @@ - Bug26
      Synopsis

      • f :: ()
      • g :: ()
      • class C a where
    Documentation

    f :: ()

    g :: ()

    class C a whereSince: 1.0

    Minimal complete definition

    c_f

    Methods

    c_f :: a

    C ()
     
    data TP TP A = = ProblemCtor A 

    data family DP t :: *

    t :: *

    Instances

    data DP A = = ProblemCtor' A
     
    +> \ No newline at end of file diff --git a/html-test/ref/Bug298.html b/html-test/ref/Bug298.html index 9e52da5e..6ce24bdb 100644 --- a/html-test/ref/Bug298.html +++ b/html-test/ref/Bug298.html @@ -1,32 +1,33 @@ - Bug298
    Synopsis

    Documentation

    (<^>) :: (a -> a) -> a -> a

    (<^) :: a -> a -> a

    (^>) :: a -> a -> a

    (⋆^) :: a -> a -> a

    f :: ()

    Links to <^> and ^>, <^ and ⋆^.

    +> \ No newline at end of file diff --git a/html-test/ref/Bug3.html b/html-test/ref/Bug3.html index 70e799be..d5287df4 100644 --- a/html-test/ref/Bug3.html +++ b/html-test/ref/Bug3.html @@ -1,32 +1,33 @@ - Bug3
    Synopsis

    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/Bug308.html b/html-test/ref/Bug308.html index 23761bec..6113fdeb 100644 --- a/html-test/ref/Bug308.html +++ b/html-test/ref/Bug308.html @@ -1,32 +1,33 @@ - Bug308
    Synopsis

    • f :: ()
    • g :: ()
    Documentation

    f :: ()

    +> \ No newline at end of file diff --git a/html-test/ref/Bug308CrossModule.html b/html-test/ref/Bug308CrossModule.html index fea4c4a5..cf935c85 100644 --- a/html-test/ref/Bug308CrossModule.html +++ b/html-test/ref/Bug308CrossModule.html @@ -1,32 +1,33 @@ - Bug308CrossModule
    Synopsis

    • h :: ()
    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/Bug310.html b/html-test/ref/Bug310.html index 62717c76..7ba62e68 100644 --- a/html-test/ref/Bug310.html +++ b/html-test/ref/Bug310.html @@ -1,32 +1,33 @@ - Bug310
  • type family a a + b :: b :: Nat
  • type family a a + b :: b :: Nat infixl 6

    +> \ No newline at end of file diff --git a/html-test/ref/Bug313.html b/html-test/ref/Bug313.html index 5477cf2c..b2857202 100644 --- a/html-test/ref/Bug313.html +++ b/html-test/ref/Bug313.html @@ -1,32 +1,33 @@ - Bug313
    The first list is incorrectly numbered as 1. 2. 1.; the second example renders fine (1. 2. 3.).

    See See https://github.com/haskell/haddock/issues/313

    Synopsis

    • a :: a
    • b :: a
    Documentation

    a :: a

    b :: a

    +> \ No newline at end of file diff --git a/html-test/ref/Bug335.html b/html-test/ref/Bug335.html index 6b3dc613..c8f5bed9 100644 --- a/html-test/ref/Bug335.html +++ b/html-test/ref/Bug335.html @@ -1,32 +1,33 @@ - Bug335
    Synopsis

    • f :: ()
    • g :: ()
    Documentation

    f :: ()

    g :: ()

    +> \ No newline at end of file diff --git a/html-test/ref/Bug387.html b/html-test/ref/Bug387.html index 80735916..0fdfd723 100644 --- a/html-test/ref/Bug387.html +++ b/html-test/ref/Bug387.html @@ -1,34 +1,33 @@ - Bug387
    +> \ No newline at end of file diff --git a/html-test/ref/Bug4.html b/html-test/ref/Bug4.html index f1fab937..d109a20b 100644 --- a/html-test/ref/Bug4.html +++ b/html-test/ref/Bug4.html @@ -1,32 +1,33 @@ - Bug4
    Synopsis

    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/Bug6.html b/html-test/ref/Bug6.html index 407a031c..335a16d0 100644 --- a/html-test/ref/Bug6.html +++ b/html-test/ref/Bug6.html @@ -1,32 +1,33 @@ - Bug6
  • data A = = A Int
  • data B = = B {
  • data C = = C {
  • data D = = D Int Int
  • newtype E = = E Int
  • data A

    data B

    B 

    data C

    class Bar x y

    +> \ No newline at end of file diff --git a/html-test/ref/Bug8.html b/html-test/ref/Bug8.html index 6f0bc654..3b91dfc7 100644 --- a/html-test/ref/Bug8.html +++ b/html-test/ref/Bug8.html @@ -1,32 +1,33 @@ -Bug8

    data Typ

    C 

    data D

    newtype E

    +> \ No newline at end of file diff --git a/html-test/ref/Bug7.html b/html-test/ref/Bug7.html index f3bd4db6..4578c771 100644 --- a/html-test/ref/Bug7.html +++ b/html-test/ref/Bug7.html @@ -1,32 +1,33 @@ - Bug7
    Type ( (Typ, [, [Typ]) 
    TFree ( (Typ, [, [Typ]) 

    (-->) :: t -> t1 -> :: t -> t1 -> Typ infix 9

    s :: t

    :: a

    t :: t

    :: a

    main :: t

    :: a

    +> \ No newline at end of file diff --git a/html-test/ref/Bug85.html b/html-test/ref/Bug85.html index e1f0431f..4e52ad65 100644 --- a/html-test/ref/Bug85.html +++ b/html-test/ref/Bug85.html @@ -1,32 +1,33 @@ - Bug85

    data Foo :: (* -> *) -> * -> * :: (* -> *) -> * -> * where

    Bar :: f x -> :: f x -> Foo f (f x) 

    data Baz :: * :: * where

    data Qux where
    Quux :: :: Qux 

    +> \ No newline at end of file diff --git a/html-test/ref/BugDeprecated.html b/html-test/ref/BugDeprecated.html index 28cf89be..38f8e00e 100644 --- a/html-test/ref/BugDeprecated.html +++ b/html-test/ref/BugDeprecated.html @@ -1,32 +1,33 @@ - BugDeprecated
    Synopsis

    Documentation

    foo :: :: Int

    bar :: :: Int

    baz :: :: Int

    one :: :: Int

    two :: :: Int

    +> \ No newline at end of file diff --git a/html-test/ref/BugExportHeadings.html b/html-test/ref/BugExportHeadings.html index d6ae0359..970f8200 100644 --- a/html-test/ref/BugExportHeadings.html +++ b/html-test/ref/BugExportHeadings.html @@ -1,32 +1,33 @@ - BugExportHeadings
    Contents

    Synopsis

    FooBarBazOne

    one :: :: Int

    Two

    two :: :: Int

    Three
    +> \ No newline at end of file diff --git a/html-test/ref/Bugs.html b/html-test/ref/Bugs.html index 78807f43..6082a9b8 100644 --- a/html-test/ref/Bugs.html +++ b/html-test/ref/Bugs.html @@ -1,32 +1,33 @@ - Bugs

    data A a

    A a (a -> a (a -> Int) 
    +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedClass.html b/html-test/ref/DeprecatedClass.html index 7bf4b41c..0c7449dc 100644 --- a/html-test/ref/DeprecatedClass.html +++ b/html-test/ref/DeprecatedClass.html @@ -1,32 +1,33 @@ - DeprecatedClass
  • class SomeClass a where
  • class SomeOtherClass a where
  • class SomeClass a where

    some class

    Minimal complete definition

    foo

    Methods

    foo :: a -> a

    class SomeOtherClass a whereDeprecated: SomeOtherClass

    Minimal complete definition

    bar

    Methods

    bar :: a -> a

    +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedData.html b/html-test/ref/DeprecatedData.html index 0a90e110..2029bb89 100644 --- a/html-test/ref/DeprecatedData.html +++ b/html-test/ref/DeprecatedData.html @@ -1,32 +1,33 @@ - DeprecatedData
  • data Foo
  • data One

    data Foo

    Foo
    Bar

    data One

    One
    Two +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedFunction.html b/html-test/ref/DeprecatedFunction.html index b015bc95..e3ecec8d 100644 --- a/html-test/ref/DeprecatedFunction.html +++ b/html-test/ref/DeprecatedFunction.html @@ -1,32 +1,33 @@ - DeprecatedFunction
    Synopsis

    Documentation

    foo :: :: Int

    Deprecated: use bar instead

    +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedFunction2.html b/html-test/ref/DeprecatedFunction2.html index 46a509ee..10676eef 100644 --- a/html-test/ref/DeprecatedFunction2.html +++ b/html-test/ref/DeprecatedFunction2.html @@ -1,32 +1,33 @@ - DeprecatedFunction2
    Synopsis

    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedFunction3.html b/html-test/ref/DeprecatedFunction3.html index 1749d024..c5dbf8ee 100644 --- a/html-test/ref/DeprecatedFunction3.html +++ b/html-test/ref/DeprecatedFunction3.html @@ -1,32 +1,33 @@ - DeprecatedFunction3
    Synopsis

    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedModule.html b/html-test/ref/DeprecatedModule.html index 1dd3fb45..4a38a820 100644 --- a/html-test/ref/DeprecatedModule.html +++ b/html-test/ref/DeprecatedModule.html @@ -1,32 +1,33 @@ - DeprecatedModule

    Deprecated: Use Deprecated: Use Foo instead

    Documentation for Documentation for DeprecatedModule.

    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedModule2.html b/html-test/ref/DeprecatedModule2.html index dea6dc97..b32e079e 100644 --- a/html-test/ref/DeprecatedModule2.html +++ b/html-test/ref/DeprecatedModule2.html @@ -1,32 +1,33 @@ - DeprecatedModule2
    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedNewtype.html b/html-test/ref/DeprecatedNewtype.html index c521ec33..084c95b1 100644 --- a/html-test/ref/DeprecatedNewtype.html +++ b/html-test/ref/DeprecatedNewtype.html @@ -1,32 +1,33 @@ - DeprecatedNewtype
  • newtype SomeNewType = = SomeNewTypeConst String
  • newtype SomeOtherNewType = = SomeOtherNewTypeConst String
  • newtype SomeNewType

    SomeNewTypeConst String

    newtype SomeOtherNewType

    SomeOtherNewTypeConst String +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedReExport.html b/html-test/ref/DeprecatedReExport.html index f73c2996..4279ef80 100644 --- a/html-test/ref/DeprecatedReExport.html +++ b/html-test/ref/DeprecatedReExport.html @@ -1,32 +1,33 @@ - DeprecatedReExport
    Contents

    Synopsis

    Re-exported from an other module

    foo :: :: Int

    Deprecated: use bar instead

    Re-exported from an other package
    +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedRecord.html b/html-test/ref/DeprecatedRecord.html index 5991b7dc..c2fb2e0d 100644 --- a/html-test/ref/DeprecatedRecord.html +++ b/html-test/ref/DeprecatedRecord.html @@ -1,32 +1,33 @@ - DeprecatedRecord
  • data Foo = = Foo {

    data Foo

    Foo 
    • fooName :: :: String
    • fooValue :: :: Int
      +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedTypeFamily.html b/html-test/ref/DeprecatedTypeFamily.html index 175c1b25..5539aadb 100644 --- a/html-test/ref/DeprecatedTypeFamily.html +++ b/html-test/ref/DeprecatedTypeFamily.html @@ -1,32 +1,33 @@ - DeprecatedTypeFamily
    • data family SomeTypeFamily k :: * -> *
    • k :: * -> *
    • data family SomeOtherTypeFamily k :: * -> *
    • k :: * -> *

    data family SomeTypeFamily k :: * -> *

    k :: * -> *

    data family SomeOtherTypeFamily k :: * -> *

    k :: * -> *

    +> \ No newline at end of file diff --git a/html-test/ref/DeprecatedTypeSynonym.html b/html-test/ref/DeprecatedTypeSynonym.html index 0f986624..925f4656 100644 --- a/html-test/ref/DeprecatedTypeSynonym.html +++ b/html-test/ref/DeprecatedTypeSynonym.html @@ -1,32 +1,33 @@ - DeprecatedTypeSynonym
    +> \ No newline at end of file diff --git a/html-test/ref/Examples.html b/html-test/ref/Examples.html index 57c359df..a8565ae6 100644 --- a/html-test/ref/Examples.html +++ b/html-test/ref/Examples.html @@ -1,32 +1,33 @@ - Examples
    Synopsis

    Documentation

    fib :: :: Integer -> -> Integer

    Fibonacci number of given Integer.

    +> \ No newline at end of file diff --git a/html-test/ref/Extensions.html b/html-test/ref/Extensions.html index 780466b8..66b77c04 100644 --- a/html-test/ref/Extensions.html +++ b/html-test/ref/Extensions.html @@ -1,32 +1,33 @@ - Extensions
    Synopsis

    Documentation

    foobar :: t

    +> \ No newline at end of file diff --git a/html-test/ref/FunArgs.html b/html-test/ref/FunArgs.html index d889b611..30273c0b 100644 --- a/html-test/ref/FunArgs.html +++ b/html-test/ref/FunArgs.html @@ -1,32 +1,33 @@ - FunArgs
    Documentation

    f

    (a :: ()). proxy a
    :: :: Ord a 
    => => Int
    -> -> Bool:: forall (b :: ()). (d ~ (b :: ()). d ~ ()) 
    :: forall (a :: ()). proxy a

    First argument

    +> \ No newline at end of file diff --git a/html-test/ref/GADTRecords.html b/html-test/ref/GADTRecords.html index b5b60d0f..8ee4b332 100644 --- a/html-test/ref/GADTRecords.html +++ b/html-test/ref/GADTRecords.html @@ -1,32 +1,33 @@ - GADTRecords
  • data H1 a b where

    data H1 a b where VisibleClass VisibleData

    data VisibleData

    VisibleClass VisibleData +> \ No newline at end of file diff --git a/html-test/ref/HiddenInstancesB.html b/html-test/ref/HiddenInstancesB.html index 8a1eb968..17f1d03f 100644 --- a/html-test/ref/HiddenInstancesB.html +++ b/html-test/ref/HiddenInstancesB.html @@ -1,32 +1,33 @@ -HiddenInstancesB
  • class Foo a
  • data Bar
  • class Foo a

    +> \ No newline at end of file diff --git a/html-test/ref/Hyperlinks.html b/html-test/ref/Hyperlinks.html index b5547e50..964da904 100644 --- a/html-test/ref/Hyperlinks.html +++ b/html-test/ref/Hyperlinks.html @@ -1,32 +1,33 @@ - Hyperlinks
    Synopsis

    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/IgnoreExports.html b/html-test/ref/IgnoreExports.html index 6591f0d3..cd8d2388 100644 --- a/html-test/ref/IgnoreExports.html +++ b/html-test/ref/IgnoreExports.html @@ -1,32 +1,33 @@ - IgnoreExports
    Synopsis

    Documentation

    foo :: :: Int

    +> \ No newline at end of file diff --git a/html-test/ref/ImplicitParams.html b/html-test/ref/ImplicitParams.html index c81f484b..68656338 100644 --- a/html-test/ref/ImplicitParams.html +++ b/html-test/ref/ImplicitParams.html @@ -1,32 +1,33 @@ - ImplicitParams

    data X

    C1 :: :: H1 a b 
    C2 :: :: Ord a => [a] -> a => [a] -> H1 a a 
    C3 :: Int -> :: {..} -> H1 Int Int 
    C4 :: a -> :: {..} -> H1 Int a 

    data HashTable key val

    key should be an instance of Eq.

    s

    new :: ( :: (Eq key, key, Hash key) => key) => Int -> -> IO ( (HashTable key val)

    insert :: ( :: (Eq key, key, Hash key) => key -> val -> key) => key -> val -> IO ()

    lookup :: :: Hash key => key -> key => key -> IO ( (Maybe val)

    Looks up a key in the hash table, returns Just val if the key was found, or Nothing otherwise.

    class Hash a where

    A class of types which can be hashed.

    Minimal complete definition

    hash

    Methods

    hash :: a -> :: a -> Int

    hashes the value of type a into an Int

    Hash Float
     

    Methods

    hash :: :: Float -> -> Int

    Hash Int
     

    Methods

    hash :: :: Int -> -> Int

    ( (Hash a, a, Hash b) => b) => Hash (a, b)
     

    Methods

    hash :: (a, b) -> :: (a, b) -> Int

    +> \ No newline at end of file diff --git a/html-test/ref/HiddenInstances.html b/html-test/ref/HiddenInstances.html index 3eb94df8..d18c6b6c 100644 --- a/html-test/ref/HiddenInstances.html +++ b/html-test/ref/HiddenInstances.html @@ -1,32 +1,33 @@ - HiddenInstances
    X 

  • c :: (?x :: :: (?x :: X) => ) => X

    d :: (?x :: :: (?x :: X, ?y :: , ?y :: X) => () => (X, , X)

    f :: ((?x :: :: ((?x :: X) => a) -> a

    +> \ No newline at end of file diff --git a/html-test/ref/Instances.html b/html-test/ref/Instances.html new file mode 100644 index 00000000..c2904e42 --- /dev/null +++ b/html-test/ref/Instances.html @@ -0,0 +1,1708 @@ +Instances
    Safe HaskellSafe

    Instances

    Documentation

    newtype a <~~ b

    Constructors

    Xyzzy (b -> (a, a))

    Instances

    Foo ((<~~) a)

    Methods

    foo :: (a <~~ Int) -> a -> a <~~ a

    foo' :: (a <~~ (a <~~ a)) -> Int -> a <~~ (a <~~ Int)

    class Foo f where

    Methods

    foo :: f Int -> a -> f a

    foo' :: f (f a) -> Int -> f (f Int)

    Instances

    Foo []

    Methods

    foo :: [Int] -> a -> [a]

    foo' :: [[a]] -> Int -> [[Int]]

    Foo Maybe

    Methods

    foo :: Maybe Int -> a -> Maybe a

    foo' :: Maybe (Maybe a) -> Int -> Maybe (Maybe Int)

    Foo ((->) a)

    Methods

    foo :: (a -> Int) -> a -> a -> a

    foo' :: (a -> a -> a) -> Int -> a -> a -> Int

    Foo (Either a)

    Methods

    foo :: Either a Int -> a -> Either a a

    foo' :: Either a (Either a a) -> Int -> Either a (Either a Int)

    (Eq a, Foo f) => Foo ((,) (f a))

    Methods

    foo :: (f a, Int) -> a -> (f a, a)

    foo' :: (f a, (f a, a)) -> Int -> (f a, (f a, Int))

    Foo ((<~~) a)

    Methods

    foo :: (a <~~ Int) -> a -> a <~~ a

    foo' :: (a <~~ (a <~~ a)) -> Int -> a <~~ (a <~~ Int)

    Foo ((,,) a a)

    Methods

    foo :: (a, a, Int) -> a -> (a, a, a)

    foo' :: (a, a, (a, a, a)) -> Int -> (a, a, (a, a, Int))

    Foo (Quux a b)

    Methods

    foo :: Quux a b Int -> a -> Quux a b a

    foo' :: Quux a b (Quux a b a) -> Int -> Quux a b (Quux a b Int)

    class Foo f => Bar f a where

    Methods

    bar :: f a -> f Bool -> a

    bar' :: f (f a) -> f (f (f b))

    bar0, bar1 :: (f a, f a) -> (f b, f c)

    Instances

    Bar Maybe Bool

    Methods

    bar :: Maybe Bool -> Maybe Bool -> Bool

    bar' :: Maybe (Maybe Bool) -> Maybe (Maybe (Maybe b))

    bar0 :: (Maybe Bool, Maybe Bool) -> (Maybe b, Maybe c)

    bar1 :: (Maybe Bool, Maybe Bool) -> (Maybe b, Maybe c)

    Bar Maybe [a]

    Methods

    bar :: Maybe [a] -> Maybe Bool -> [a]

    bar' :: Maybe (Maybe [a]) -> Maybe (Maybe (Maybe b))

    bar0 :: (Maybe [a], Maybe [a]) -> (Maybe b, Maybe c)

    bar1 :: (Maybe [a], Maybe [a]) -> (Maybe b, Maybe c)

    Bar [] (a, a)

    Methods

    bar :: [(a, a)] -> [Bool] -> (a, a)

    bar' :: [[(a, a)]] -> [[[b]]]

    bar0 :: ([(a, a)], [(a, a)]) -> ([b], [c])

    bar1 :: ([(a, a)], [(a, a)]) -> ([b], [c])

    Foo f => Bar (Either a) (f a)

    Methods

    bar :: Either a (f a) -> Either a Bool -> f a

    bar' :: Either a (Either a (f a)) -> Either a (Either a (Either a b))

    bar0 :: (Either a (f a), Either a (f a)) -> (Either a b, Either a c)

    bar1 :: (Either a (f a), Either a (f a)) -> (Either a b, Either a c)

    Foo ((,,) a b) => Bar ((,,) a b) (a, b, a)

    Methods

    bar :: (a, b, (a, b, a)) -> (a, b, Bool) -> (a, b, a)

    bar' :: (a, b, (a, b, (a, b, a))) -> (a, b, (a, b, (a, b, b)))

    bar0 :: ((a, b, (a, b, a)), (a, b, (a, b, a))) -> ((a, b, b), (a, b, c))

    bar1 :: ((a, b, (a, b, a)), (a, b, (a, b, a))) -> ((a, b, b), (a, b, c))

    Bar (Quux a c) (Quux a b c)

    Methods

    bar :: Quux a c (Quux a b c) -> Quux a c Bool -> Quux a b c

    bar' :: Quux a c (Quux a c (Quux a b c)) -> Quux a c (Quux a c (Quux a c b))

    bar0 :: (Quux a c (Quux a b c), Quux a c (Quux a b c)) -> (Quux a c b, Quux a c c)

    bar1 :: (Quux a c (Quux a b c), Quux a c (Quux a b c)) -> (Quux a c b, Quux a c c)

    class Baz a where

    Methods

    baz :: a -> (forall a. a -> a) -> (b, forall c. c -> a) -> (b, c)

    baz' :: b -> (forall b. b -> a) -> (forall b. b -> a) -> [(b, a)]

    baz'' :: b -> (forall b. (forall b. b -> a) -> c) -> forall c. c -> b

    Instances

    Baz [c]

    Methods

    baz :: [c] -> (forall a. a -> a) -> (b, forall a. a -> [c]) -> (b, c)

    baz' :: b -> (forall b. b -> [c]) -> (forall b. b -> [c]) -> [(b, [c])]

    baz'' :: b -> (forall b. (forall a. a -> [c]) -> c) -> forall a. a -> b

    Baz (a -> b)

    Methods

    baz :: (a -> b) -> (forall c. c -> c) -> (b, forall c. c -> a -> b) -> (b, c)

    baz' :: b -> (forall c. c -> a -> b) -> (forall c. c -> a -> b) -> [(b, a -> b)]

    baz'' :: b -> (forall c. (forall d. d -> a -> b) -> c) -> forall c. c -> b

    Baz (a, b, c)

    Methods

    baz :: (a, b, c) -> (forall d. d -> d) -> (b, forall d. d -> (a, b, c)) -> (b, c)

    baz' :: b -> (forall d. d -> (a, b, c)) -> (forall d. d -> (a, b, c)) -> [(b, (a, b, c))]

    baz'' :: b -> (forall d. (forall e. e -> (a, b, c)) -> c) -> forall d. d -> b

    Baz (Quux a b c)

    Methods

    baz :: Quux a b c -> (forall d. d -> d) -> (b, forall d. d -> Quux a b c) -> (b, c)

    baz' :: b -> (forall d. d -> Quux a b c) -> (forall d. d -> Quux a b c) -> [(b, Quux a b c)]

    baz'' :: b -> (forall d. (forall e. e -> Quux a b c) -> c) -> forall d. d -> b

    Baz (a, [b], b, a)

    Methods

    baz :: (a, [b], b, a) -> (forall c. c -> c) -> (b, forall c. c -> (a, [b], b, a)) -> (b, c)

    baz' :: b -> (forall c. c -> (a, [b], b, a)) -> (forall c. c -> (a, [b], b, a)) -> [(b, (a, [b], b, a))]

    baz'' :: b -> (forall c. (forall d. d -> (a, [b], b, a)) -> c) -> forall c. c -> b

    data Quux a b c

    Constructors

    Qx a
    Qux a b
    Quux a b c

    Instances

    Foo (Quux a b)

    Methods

    foo :: Quux a b Int -> a -> Quux a b a

    foo' :: Quux a b (Quux a b a) -> Int -> Quux a b (Quux a b Int)

    Bar (Quux a c) (Quux a b c)

    Methods

    bar :: Quux a c (Quux a b c) -> Quux a c Bool -> Quux a b c

    bar' :: Quux a c (Quux a c (Quux a b c)) -> Quux a c (Quux a c (Quux a c b))

    bar0 :: (Quux a c (Quux a b c), Quux a c (Quux a b c)) -> (Quux a c b, Quux a c c)

    bar1 :: (Quux a c (Quux a b c), Quux a c (Quux a b c)) -> (Quux a c b, Quux a c c)

    Baz (Quux a b c)

    Methods

    baz :: Quux a b c -> (forall d. d -> d) -> (b, forall d. d -> Quux a b c) -> (b, c)

    baz' :: b -> (forall d. d -> Quux a b c) -> (forall d. d -> Quux a b c) -> [(b, Quux a b c)]

    baz'' :: b -> (forall d. (forall e. e -> Quux a b c) -> c) -> forall d. d -> b

    data Thud Int (Quux a [a] c)

    class Norf a b where

    Associated Types

    type Plugh a c b

    data Thud a c

    Methods

    norf :: Plugh a c b -> a -> (a -> c) -> b

    Instances

    Norf Int Bool

    Associated Types

    type Plugh Int c Bool :: *

    data Thud Int c :: *

    Methods

    norf :: Plugh Int c Bool -> Int -> (Int -> c) -> Bool

    Norf [a] [b]

    Associated Types

    type Plugh [a] c [b] :: *

    data Thud [a] c :: *

    Methods

    norf :: Plugh [a] c [b] -> [a] -> ([a] -> c) -> [b]

    \ No newline at end of file diff --git a/html-test/ref/Math.html b/html-test/ref/Math.html index 5b76fd13..e2e962f6 100644 --- a/html-test/ref/Math.html +++ b/html-test/ref/Math.html @@ -1,34 +1,33 @@ - Math
    Synopsis

    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/Minimal.html b/html-test/ref/Minimal.html index 48c469d1..eb9d1f5d 100644 --- a/html-test/ref/Minimal.html +++ b/html-test/ref/Minimal.html @@ -1,32 +1,33 @@ - Minimal

    class Foo a where

    Minimal complete definition

    foo, , bar | | bar, , bat | | foo, , bat | | fooBarBat

    Methods

    foo :: a

    Any two of these are required...

    bar :: a

    bat :: a

    fooBarBat :: (a, a, a)

    class Weird a where

    Minimal complete definition

    a, , b, , c | | d | | e, (, (f | | g)

    Methods

    a :: a

    b :: a

    c :: a

    d :: a

    e :: a

    f :: a

    g :: a

    class NoMins a where

    Minimal complete definition

    x, , y

    Methods

    x :: a

    y :: a

    z :: a

    class FullMin a where

    Minimal complete definition

    aaa, bbb

    Methods

    aaa :: a

    bbb :: a

    class PartialMin a where

    Minimal complete definition

    ccc, ddd

    Methods

    ccc :: a

    class EmptyMin a where

    Minimal complete definition

    Nothing

    Methods

    eee :: a

    fff :: a

    +> \ No newline at end of file diff --git a/html-test/ref/ModuleWithWarning.html b/html-test/ref/ModuleWithWarning.html index fa2a6787..ff6b6c65 100644 --- a/html-test/ref/ModuleWithWarning.html +++ b/html-test/ref/ModuleWithWarning.html @@ -1,32 +1,33 @@ - ModuleWithWarning

    Warning: This is an unstable interface. Prefer functions from Warning: This is an unstable interface. Prefer functions from Prelude instead!

    Documentation for Documentation for ModuleWithWarning.

    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/NamedDoc.html b/html-test/ref/NamedDoc.html index 64e18711..50590660 100644 --- a/html-test/ref/NamedDoc.html +++ b/html-test/ref/NamedDoc.html @@ -1,32 +1,33 @@ - NamedDoc
    +> \ No newline at end of file diff --git a/html-test/ref/Nesting.html b/html-test/ref/Nesting.html index 7bba5148..37266c5d 100644 --- a/html-test/ref/Nesting.html +++ b/html-test/ref/Nesting.html @@ -1,32 +1,33 @@ - Nesting
    Synopsis

    • d :: t
    • e :: t
    • f :: t
    • g :: t
    • h :: t
    • i :: t
    • j :: t
    • k :: t
    Documentation

    d :: t

    e :: t

    f :: t

    g :: t

    h :: t

    i :: t

    j :: t

    k :: t

    +> \ No newline at end of file diff --git a/html-test/ref/NoLayout.html b/html-test/ref/NoLayout.html index 8b47eab8..23017d56 100644 --- a/html-test/ref/NoLayout.html +++ b/html-test/ref/NoLayout.html @@ -1,32 +1,33 @@ - NoLayout
    Synopsis

    Documentation

    g :: :: Int

    the function g

    +> \ No newline at end of file diff --git a/html-test/ref/NonGreedy.html b/html-test/ref/NonGreedy.html index c22c8ea9..9530b46b 100644 --- a/html-test/ref/NonGreedy.html +++ b/html-test/ref/NonGreedy.html @@ -1,32 +1,33 @@ - NonGreedy
    Synopsis

    • f :: a
    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/Operators.html b/html-test/ref/Operators.html index 6ac8ae38..e22147d6 100644 --- a/html-test/ref/Operators.html +++ b/html-test/ref/Operators.html @@ -1,32 +1,33 @@ - Operators
    Synopsis

    Documentation

    (+-) :: a -> a -> a

    (*/) :: a -> a -> a infixr 7

    foo :: a -> a -> a infixl 3

    data Foo

    Methods

    aClass :: :: AType -> -> Int

    +> \ No newline at end of file diff --git a/html-test/ref/OrphanInstancesClass.html b/html-test/ref/OrphanInstancesClass.html index 69ba33f8..871fe6c0 100644 --- a/html-test/ref/OrphanInstancesClass.html +++ b/html-test/ref/OrphanInstancesClass.html @@ -1,32 +1,33 @@ -OrphanInstancesClass

    class AClass a where

    Minimal complete definition

    aClass

    Methods

    aClass :: a -> :: a -> Int

    +> \ No newline at end of file diff --git a/html-test/ref/OrphanInstancesType.html b/html-test/ref/OrphanInstancesType.html index 2652db73..0fc47009 100644 --- a/html-test/ref/OrphanInstancesType.html +++ b/html-test/ref/OrphanInstancesType.html @@ -1,32 +1,33 @@ -OrphanInstancesType

    data AType

    Foo `Bar` Foo infixl 3
    Foo :- Foo infixr 5

    pattern (:+) :: t -> t -> [t] :: forall t. t -> t -> [t] infixr 3

    data a a <-> b where
    (:<->) :: a -> b -> a :: a -> b -> a <-> b infixr 6 

    type family a a ++ b infix 3

    data family a a ** b infix 9

    class a a ><> b b | a -> b where infixr 1

    Class with fixity, including associated types

    Minimal complete definition

    (>><), (<<>), (**>), (**<), (>**), (<**)

    Associated Types

    type a a <>< b :: * b :: * infixl 2

    data a a ><< b infixl 3

    Methods

    (>><), , (<<>) :: a -> b -> () infixl 5 <<>

    (**>), , (**<), , (>**), , (<**) :: a -> a -> () infixr 8 **>, >**

    type (>-<) a b = a a b = a <-> b infixl 6

    +> \ No newline at end of file diff --git a/html-test/ref/OrphanInstances.html b/html-test/ref/OrphanInstances.html index 0f12bb2e..0ece21f5 100644 --- a/html-test/ref/OrphanInstances.html +++ b/html-test/ref/OrphanInstances.html @@ -1,32 +1,33 @@ - OrphanInstances
    AType Int 
    +> \ No newline at end of file diff --git a/html-test/ref/PatternSyns.html b/html-test/ref/PatternSyns.html index 6fe8fff0..9347dfb8 100644 --- a/html-test/ref/PatternSyns.html +++ b/html-test/ref/PatternSyns.html @@ -1,32 +1,33 @@ - PatternSyns
  • data FooType x = x = FooCtor x
  • pattern Foo :: t -> :: forall t. t -> FooType t
  • pattern Bar :: t -> :: forall t. t -> FooType ( (FooType t)
  • pattern (:<->) :: t -> t -> ( :: forall t t. t -> t -> (FooType t, t, FooType ( (FooType t))
  • data a a >< b = b = Empty
  • pattern E :: :: forall k t t. (><) k t t
  • data FooType x

    pattern Foo :: t -> :: forall t. t -> FooType t

    Pattern synonym for Foo x

    pattern Bar :: t -> :: forall t. t -> FooType ( (FooType t)

    Pattern synonym for Bar x

    pattern (:<->) :: t -> t -> ( :: forall t t. t -> t -> (FooType t, t, FooType ( (FooType t))

    Pattern synonym for (:<->)

    data a a >< b

    Doc for (><)

    Empty 

    pattern E :: :: forall k t t. (><) k t t

    Pattern for Empty

    +> \ No newline at end of file diff --git a/html-test/ref/PromotedTypes.html b/html-test/ref/PromotedTypes.html index db42f637..7567d2f5 100644 --- a/html-test/ref/PromotedTypes.html +++ b/html-test/ref/PromotedTypes.html @@ -1,32 +1,33 @@ - PromotedTypes

    data RevList a

    data Pattern :: [*] -> * :: [*] -> * where

    data RevPattern :: :: RevList * -> * * -> * where

    data Tuple :: (*, *) -> * :: (*, *) -> * where

    Tuple :: a -> b -> :: a -> b -> Tuple '(a, b) 
    +> \ No newline at end of file diff --git a/html-test/ref/Properties.html b/html-test/ref/Properties.html index 5d2e58c0..e24d6265 100644 --- a/html-test/ref/Properties.html +++ b/html-test/ref/Properties.html @@ -1,32 +1,33 @@ - Properties
    Synopsis

    Documentation

    fib :: :: Integer -> -> Integer

    Fibonacci number of given Integer.

    +> \ No newline at end of file diff --git a/html-test/ref/PruneWithWarning.html b/html-test/ref/PruneWithWarning.html index bbf21f42..0ee2b104 100644 --- a/html-test/ref/PruneWithWarning.html +++ b/html-test/ref/PruneWithWarning.html @@ -1,32 +1,33 @@ - PruneWithWarning
    +> \ No newline at end of file diff --git a/html-test/ref/QuasiExpr.html b/html-test/ref/QuasiExpr.html index 41129d59..45371eb9 100644 --- a/html-test/ref/QuasiExpr.html +++ b/html-test/ref/QuasiExpr.html @@ -1,32 +1,33 @@ - QuasiExpr
     

    Methods

    showsPrec :: :: Int -> -> Expr -> -> ShowS

    show :: :: Expr -> -> String

    showList :: [ :: [Expr] -> ] -> ShowS

    data BinOp

    Show BinOp
     

    Methods

    showsPrec :: :: Int -> -> BinOp -> -> ShowS

    show :: :: BinOp -> -> String

    showList :: [ :: [BinOp] -> ] -> ShowS

    expr :: QuasiQuoter

    +> \ No newline at end of file diff --git a/html-test/ref/QuasiQuote.html b/html-test/ref/QuasiQuote.html index 610f5edf..ad23b77d 100644 --- a/html-test/ref/QuasiQuote.html +++ b/html-test/ref/QuasiQuote.html @@ -1,32 +1,33 @@ - QuasiQuote
    Documentation
    +> \ No newline at end of file diff --git a/html-test/ref/SpuriousSuperclassConstraints.html b/html-test/ref/SpuriousSuperclassConstraints.html index 1cae5ba1..243ab30b 100644 --- a/html-test/ref/SpuriousSuperclassConstraints.html +++ b/html-test/ref/SpuriousSuperclassConstraints.html @@ -1,32 +1,33 @@ - SpuriousSuperclassConstraints
    Due to a change in GHC 7.6.1 we had a bug that superclass contraints were included in the instances list. Edward K. repported it here:

    http://www.haskell.org/pipermail/haskell-cafe/2012-September/103600.html

    And here is the corresponding theard on glasgow-haskell-users:

    http://www.haskell.org/pipermail/glasgow-haskell-users/2012-September/022914.html

    data SomeType f a

     

    Methods

    fmap :: (a -> b) -> :: (a -> b) -> SomeType f a -> f a -> SomeType f b

    (<$) :: a -> :: a -> SomeType f b -> f b -> SomeType f a

    Applicative f => f => Applicative ( (SomeType f)
     

    Methods

    pure :: a -> :: a -> SomeType f a

    (<*>) :: :: SomeType f (a -> b) -> f (a -> b) -> SomeType f a -> f a -> SomeType f b

    (*>) :: :: SomeType f a -> f a -> SomeType f b -> f b -> SomeType f b

    (<*) :: :: SomeType f a -> f a -> SomeType f b -> f b -> SomeType f a

    +> \ No newline at end of file diff --git a/html-test/ref/TH.html b/html-test/ref/TH.html index e72c2189..f142479c 100644 --- a/html-test/ref/TH.html +++ b/html-test/ref/TH.html @@ -1,32 +1,33 @@ - TH
    Documentation

    decl :: Q [Dec]

    +> \ No newline at end of file diff --git a/html-test/ref/TH2.html b/html-test/ref/TH2.html index cf896bac..07b2c7d4 100644 --- a/html-test/ref/TH2.html +++ b/html-test/ref/TH2.html @@ -1,32 +1,33 @@ - TH2
    Documentation

    f :: t -> t

    +> \ No newline at end of file diff --git a/html-test/ref/Test.html b/html-test/ref/Test.html index 8b82fe0b..6fb34801 100644 --- a/html-test/ref/Test.html +++ b/html-test/ref/Test.html @@ -1,32 +1,33 @@ - Test
    Contents

  • class E a
  • class F a where
  • a :: C a => IO a
  • f :: :: C a => a -> a => a -> Int
  • g :: :: Int -> -> IO CInt
  • hidden :: :: Int -> -> Int
  • module module Visible
  • data Ex a
  • k :: :: T () () -> () () -> T2 Int Int -> ( -> (T3 Bool Bool -> -> T4 Float Float) -> ) -> T5 () () -> () () -> IO ()
  • l :: ( :: (Int, , Int, , Float) -> ) -> Int
  • m :: :: R -> -> N1 () -> () -> IO Int
  • o :: :: Float -> -> IO Float
  • f' :: :: Int
  • withType :: :: Int
  • withoutType :: t
  • :: a

    data T a b

    A Int ( (Maybe Float)

    This comment describes the A constructor

    B ( (T a b, a b, T Int Float)

    This comment describes the B constructor

    data T2 a b

    data T3 a b

    A1 a 
    B1 b 

    data T4 a b

    A2 a 
    B2 b 

    data T5 a b

    A3 a

    documents A3

    B3 b

    documents B3

    data T6

    A4

    This is the doc for A4

    B4

    This is the doc for B4

    C4

    This is the doc for C4

    newtype N1 a

    N1 a 

    newtype N2 a b

    N2 
    • n :: a b
       

    newtype N3 a b

    N3 
    • n3 :: a b

      this is the n3 field

      data N4 a b

      newtype N5 a b

      N5 
      • n5 :: a b

        newtype N6 a b

        N6
        • n6 :: a b
           

        newtype N7 a b

        data Bar Y
        N7

        The N7 constructor

        • n7 :: a b
           

        data R

        This is the documentation for the R record, which has four fields, p, q, r, and s.

        C1

        This is the C1 record constructor, with the following fields:

        • p :: :: Int

          This comment applies to the p field

        • q :: forall

          This comment applies to the q field

        • r, , s :: :: Int

          This comment applies to both r and s

        C2

        This is the C2 record constructor, also with some fields:

        data R1

        type Foo W
        C3

        This is the C3 record constructor

        • s1 :: :: Int

          The s1 record selector

        • s2 :: :: Int

          The s2 record selector

        • s3 :: :: Int

          The s3 record selector

          class D a => a => C a whereThis comment applies to the previous declaration (the C class)

          Minimal complete definition

          a, b

          Methods

          a :: :: IO a

          this is a description of the a method

          b :: [a]

          this is a description of the b method

          class D a where

          This is a class declaration with no separate docs for the methods

          Minimal complete definition

          d, e

          Methods

          d :: :: T a b

          e :: (a, a)

          D Float
         

        Methods

        d :: :: T Float b

        e :: ( :: (Float, , Float)

        D Int
         

        Methods

        d :: :: T Int b

        e :: ( :: (Int, , Int)

        class E a

        class F a where

        Minimal complete definition

        ff

        Methods

        ff :: a

        Test that we can export a class method on its own:

        a :: C a => IO a

        this is a description of the a method

        Function types

        f :: :: C a => a -> a => a -> Int

        In a comment string we can refer to identifiers in scope with single quotes like this: T, and we can refer to modules by -using double quotes: Foo. We can add emphasis like this

             This is a block of code, which can include other markup: R
        @@ -1711,18 +1736,18 @@ using double quotes: 
        this is another block of code

        We can also include URLs in documentation: We can also include URLs in documentation: http://www.haskell.org/.

        g :: :: Int -> -> IO CInt

        Auxiliary stuff

        This is some documentation that is attached to a name ($aux1) - rather than a source declaration. The documentation may be - referred to in the export list using its name.

         code block in named doc
        This is some documentation that is attached to a name ($aux1)

        This is some documentation that is attached to a name ($aux2)

         code block on its own in named doc
         code block on its own in named doc (after newline)

        a nested, named doc comment

        foo
        bar

        This is some inline documentation in the export list

        A hidden moduleA visible module

        data Ex a

        forall b . C b => b => Ex1 b 
        forall b . Ex2 b 
        forall b . C a => a => Ex3 b 
        Ex4 (forall a. a -> a) 
        Type signatures with argument docs

        k

        :: :: T () ()

        This argument has type T

        -> -> T2 Int Int
        -> (-> (T3 Bool Bool -> -> T4 Float Float)
        -> -> T5 () ()
        -> -> IO ()

        l

        data Bat * * X
        :: (:: (Int, , Int, , Float)
        -> -> Int

        returns an Int

        m

        Test * * X

        type family Foo a :: k

        type Foo * * Y = = X
        :: :: R 
        -> -> N1 ()
        -> -> IO Int

        o

        data AssocD ( Y (a :: Y :: k)

        ) :: *

        type AssocT ( Y :: k) :: *

        (a :: Y) :: *

        Test * * Ydata Bar Ytype Foo * * Y = = X
        :: :: Float
        -> -> IO Float

        f' :: :: Int

        a function with a prime can be referred to as f' @@ -2156,9 +2163,9 @@ is at the beginning of the line).

        withType :: :: Int

        withoutType :: t

        :: a

        Comment on a definition without type signature

        +> \ No newline at end of file diff --git a/html-test/ref/Threaded.html b/html-test/ref/Threaded.html index 1f54b9ea..7aacfb60 100644 --- a/html-test/ref/Threaded.html +++ b/html-test/ref/Threaded.html @@ -1,32 +1,33 @@ - Threaded
        Synopsis

        Documentation
        +> \ No newline at end of file diff --git a/html-test/ref/Threaded_TH.html b/html-test/ref/Threaded_TH.html new file mode 100644 index 00000000..ca191bd6 --- /dev/null +++ b/html-test/ref/Threaded_TH.html @@ -0,0 +1,88 @@ +Threaded_TH
        Safe HaskellNone

        Threaded_TH

        Description

        Imported by Threaded, since a TH splice can't be used in the + module where it is defined.

        Synopsis

        Documentation

        forkTH :: Q Exp

        forkOS requires the threaded RTS, so this TH fails if haddock was + built without -threaded.

        \ No newline at end of file diff --git a/html-test/ref/Ticket112.html b/html-test/ref/Ticket112.html index 4aefb488..42e9cf13 100644 --- a/html-test/ref/Ticket112.html +++ b/html-test/ref/Ticket112.html @@ -1,32 +1,33 @@ - Ticket112
        Synopsis

        • f :: a
        Documentation

        f :: a

        ...given a raw Addr# to the string, and the length of the string.

        +> \ No newline at end of file diff --git a/html-test/ref/Ticket61.html b/html-test/ref/Ticket61.html index aeb3c022..cb6ee3d7 100644 --- a/html-test/ref/Ticket61.html +++ b/html-test/ref/Ticket61.html @@ -1,32 +1,33 @@ - Ticket61

        class C a where

        Minimal complete definition

        f

        Methods

        f :: a

        +> \ No newline at end of file diff --git a/html-test/ref/Ticket75.html b/html-test/ref/Ticket75.html index 169b0522..948453cf 100644 --- a/html-test/ref/Ticket75.html +++ b/html-test/ref/Ticket75.html @@ -1,32 +1,33 @@ - Ticket75
      • data a a :- b = b = Q
      • f :: :: Int
      • data a a :- b

        Q 

        f :: :: Int

        A reference to :-

        +> \ No newline at end of file diff --git a/html-test/ref/TitledPicture.html b/html-test/ref/TitledPicture.html index 3aac9689..1b0cc539 100644 --- a/html-test/ref/TitledPicture.html +++ b/html-test/ref/TitledPicture.html @@ -1,32 +1,33 @@ - TitledPicture
        Synopsis

        Documentation

        foo :: :: Integer

        Picture for foo without a title

        bar :: :: Integer

        Picture for bar with title

        +> \ No newline at end of file diff --git a/html-test/ref/TypeFamilies.html b/html-test/ref/TypeFamilies.html index 3295318f..a55a55ad 100644 --- a/html-test/ref/TypeFamilies.html +++ b/html-test/ref/TypeFamilies.html @@ -1,32 +1,33 @@ - TypeFamilies
      • data X
      • data Y
      • data Z
      • class Test a
      • type family Foo a :: k
      • data family Bat a :: *
      • a :: *
      • class Assoc a where
      • data AssocD a :: *
      • a :: *
      • type AssocT a :: *
      • a :: *
      • type family Bar b
      • type family a a <> b :: k
      • class a a >< b
      • data X

        X
        XX
        XXX
        (><) X XX XXX
        Assoc * * X

        Associated Types

        data AssocD ( X (a :: X :: k)

        ) :: *

        type AssocT ( X :: k) :: *

        (a :: X) :: *

        Test * * X
        (><) type Foo X XX XXX = Y 
        type Foo (<>) X XXX XX = X = Y

        External instance

        data AssocD * * X = = AssocX 
        type AssocT * * X = = Foo * * X 
        data Bat * * X

        Doc for: type instance Foo X = Y

        type (<>) * X a = X 
        type (<>) * X XXX XX = a = X 

        data Y

         
        data AssocD * * Y = = AssocY 
        type AssocT * * Y = = Bat * * Y 
        data Bat * * Y = = BatY Y

        Doc for: type instance Foo Y = X

        type (<>) * * Y a = a 

        data Z

        ZA 
        ZB 
        data Bat Z where

        class Test a

        Doc for: type instance Foo Y = X

        type Foo * * X = = Y

        Doc for: type instance Foo X = Y

        data family Bat a :: *

        a :: *

        Doc for: data family Bat a

        data Bat Z wheredata Bat * * Y = = BatY Y
        Bar X = = X 
        Bar y = y = Y 

        type family a a <> b :: k

        type (<>) * Y a = a X XXX XX = X
         
        type (<>) * X a = X * Y a = a 
        type (<>) * X XXX XX = a = X 

        class a a >< b

         
        +> \ No newline at end of file diff --git a/html-test/ref/TypeFamilies2.html b/html-test/ref/TypeFamilies2.html index 0c7e4ec6..dae60489 100644 --- a/html-test/ref/TypeFamilies2.html +++ b/html-test/ref/TypeFamilies2.html @@ -1,32 +1,33 @@ - TypeFamilies2
      • data W
      • type family Foo a
      • data family Bar a
      • data W

        Should be visible, but with a hidden right hand side

        type family Foo a

        type Foo W

        Should be visible, but with a hidden right hand side

        type Foo X = = Y

        External instance

        data family Bar a

         
        +> \ No newline at end of file diff --git a/html-test/ref/TypeOperators.html b/html-test/ref/TypeOperators.html index 283083be..a6521437 100644 --- a/html-test/ref/TypeOperators.html +++ b/html-test/ref/TypeOperators.html @@ -1,32 +1,33 @@ - TypeOperators

        data a a :-: b

        data (a (a :+: b) c

        data Op a b

        newtype O g f a

        O 
        • unO :: g (f a)
           

        class a a <=> b

        biO :: (g :: (g `O` f) a

        f :: (a ~ b) => a -> b

        :: a ~ b => a -> b

        g :: (a ~ b, b ~ c) => a -> c

        x :: (a :: (a :-: a) a) <=> (a (a `Op` a) => a

        y :: (a :: (a <=> a, (a a, (a `Op` a) a) <=> a) => a

        +> \ No newline at end of file diff --git a/html-test/ref/Unicode.html b/html-test/ref/Unicode.html index d724ecd7..393973d5 100644 --- a/html-test/ref/Unicode.html +++ b/html-test/ref/Unicode.html @@ -1,32 +1,33 @@ - Unicode
        Synopsis

        Documentation
        +> \ No newline at end of file diff --git a/html-test/ref/Visible.html b/html-test/ref/Visible.html index 54a04e86..755eb9cd 100644 --- a/html-test/ref/Visible.html +++ b/html-test/ref/Visible.html @@ -1,32 +1,33 @@ - Visible
        Documentation
        +> \ No newline at end of file -- cgit v1.2.3