diff options
-rw-r--r-- | html-test/ref/ImplicitParams.html | 22 | ||||
-rw-r--r-- | html-test/src/ImplicitParams.hs | 7 |
2 files changed, 27 insertions, 2 deletions
diff --git a/html-test/ref/ImplicitParams.html b/html-test/ref/ImplicitParams.html index 0219b323..83e8b094 100644 --- a/html-test/ref/ImplicitParams.html +++ b/html-test/ref/ImplicitParams.html @@ -51,6 +51,20 @@ window.onload = function () {pageLoad();setSynopsis("mini_ImplicitParams.html"); > <a name="t:X" class="def" >X</a ></p + ><div class="subs constructors" + ><p class="caption" + >Constructors</p + ><table + ><tr + ><td class="src" + ><a name="v:X" class="def" + >X</a + ></td + ><td class="doc empty" + > </td + ></tr + ></table + ></div ></div ><div class="top" ><p class="src" @@ -76,6 +90,14 @@ window.onload = function () {pageLoad();setSynopsis("mini_ImplicitParams.html"); >X</a >)</p ></div + ><div class="top" + ><p class="src" + ><a name="v:f" class="def" + >f</a + > :: ((?x :: <a href="ImplicitParams.html#t:X" + >X</a + >) => a) -> a</p + ></div ></div ></div ><div id="footer" diff --git a/html-test/src/ImplicitParams.hs b/html-test/src/ImplicitParams.hs index 4595b8f7..3ca9157b 100644 --- a/html-test/src/ImplicitParams.hs +++ b/html-test/src/ImplicitParams.hs @@ -1,10 +1,13 @@ -{-# LANGUAGE ImplicitParams #-} +{-# LANGUAGE ImplicitParams, RankNTypes #-} module ImplicitParams where -data X +data X = X c :: (?x :: X) => X c = ?x d :: (?x :: X, ?y :: X) => (X, X) d = (?x, ?y) + +f :: ((?x :: X) => a) -> a +f a = let ?x = X in a |