diff options
author | Łukasz Hanuszczak <lukasz.hanuszczak@gmail.com> | 2015-07-01 18:33:44 +0200 |
---|---|---|
committer | Łukasz Hanuszczak <lukasz.hanuszczak@gmail.com> | 2015-07-01 18:33:44 +0200 |
commit | dc2eed5daa4d01f97a4686352fd17405f4567169 (patch) | |
tree | 11ec7ebffc5fd76ae8cd21dedc6f49bc0122a28f /hypsrc-test | |
parent | b91ee2f4f0869d1c1076813019ce858c53738042 (diff) |
Create test case for hyperlinking @-patterns.
Diffstat (limited to 'hypsrc-test')
-rw-r--r-- | hypsrc-test/ref/src/Constructors.html | 298 | ||||
-rw-r--r-- | hypsrc-test/src/Constructors.hs | 8 |
2 files changed, 306 insertions, 0 deletions
diff --git a/hypsrc-test/ref/src/Constructors.html b/hypsrc-test/ref/src/Constructors.html index 6d6c7c06..96be3627 100644 --- a/hypsrc-test/ref/src/Constructors.html +++ b/hypsrc-test/ref/src/Constructors.html @@ -529,6 +529,304 @@ >undefined</span ><span class="" > + + +</span + ><span class="hs-identifier" + >unnorf'</span + ><span class="" + > </span + ><span class="hs-glyph" + >::</span + ><span class="" + > </span + ><a href="Constructors.html#Norf" + ><span class="hs-identifier hs-type" + >Norf</span + ></a + ><span class="" + > </span + ><span class="hs-glyph" + >-></span + ><span class="" + > </span + ><span class="hs-identifier hs-type" + >Int</span + ><span class="" + > +</span + ><a name="unnorf%27" + ><a href="Constructors.html#unnorf%27" + ><span class="hs-identifier" + >unnorf'</span + ></a + ></a + ><span class="" + > </span + ><a name="local-0" + ><a href="#local-0" + ><span class="hs-identifier" + >x</span + ></a + ></a + ><span class="hs-glyph" + >@</span + ><span class="hs-special" + >(</span + ><a href="Constructors.html#Norf" + ><span class="hs-identifier hs-var" + >Norf</span + ></a + ><span class="" + > </span + ><span class="hs-special" + >(</span + ><a name="local-0" + ><a href="#local-0" + ><span class="hs-identifier" + >f1</span + ></a + ></a + ><span class="hs-glyph" + >@</span + ><span class="hs-special" + >(</span + ><a href="Constructors.html#Quux" + ><span class="hs-identifier hs-var" + >Quux</span + ></a + ><span class="" + > </span + ><span class="hs-identifier" + >_</span + ><span class="" + > </span + ><a name="local-0" + ><a href="#local-0" + ><span class="hs-identifier" + >n</span + ></a + ></a + ><span class="hs-special" + >)</span + ><span class="hs-special" + >,</span + ><span class="" + > </span + ><span class="hs-identifier" + >_</span + ><span class="hs-special" + >,</span + ><span class="" + > </span + ><a name="local-0" + ><a href="#local-0" + ><span class="hs-identifier" + >f2</span + ></a + ></a + ><span class="hs-glyph" + >@</span + ><span class="hs-special" + >(</span + ><a href="Constructors.html#Quux" + ><span class="hs-identifier hs-var" + >Quux</span + ></a + ><span class="" + > </span + ><a name="local-0" + ><a href="#local-0" + ><span class="hs-identifier" + >f3</span + ></a + ></a + ><span class="" + > </span + ><span class="hs-identifier" + >_</span + ><span class="hs-special" + >)</span + ><span class="hs-special" + >)</span + ><span class="hs-special" + >)</span + ><span class="" + > </span + ><span class="hs-glyph" + >=</span + ><span class="" + > + </span + ><a href="#local-0" + ><span class="hs-identifier hs-var" + >x'</span + ></a + ><span class="" + > </span + ><span class="hs-operator hs-var" + >+</span + ><span class="" + > </span + ><a href="#local-0" + ><span class="hs-identifier hs-var" + >n</span + ></a + ><span class="" + > </span + ><span class="hs-operator hs-var" + >*</span + ><span class="" + > </span + ><a href="Constructors.html#unfoo" + ><span class="hs-identifier hs-var" + >unfoo</span + ></a + ><span class="" + > </span + ><a href="#local-0" + ><span class="hs-identifier hs-var" + >f1</span + ></a + ><span class="" + > </span + ><span class="hs-operator hs-var" + >+</span + ><span class="" + > </span + ><a href="#local-0" + ><span class="hs-identifier hs-var" + >aux</span + ></a + ><span class="" + > </span + ><a href="#local-0" + ><span class="hs-identifier hs-var" + >f3</span + ></a + ><span class="" + > + </span + ><span class="hs-keyword" + >where</span + ><span class="" + > + </span + ><a name="local-0" + ><a href="#local-0" + ><span class="hs-identifier" + >aux</span + ></a + ></a + ><span class="" + > </span + ><a name="local-0" + ><a href="#local-0" + ><span class="hs-identifier" + >fx</span + ></a + ></a + ><span class="" + > </span + ><span class="hs-glyph" + >=</span + ><span class="" + > </span + ><a href="Constructors.html#unfoo" + ><span class="hs-identifier hs-var" + >unfoo</span + ></a + ><span class="" + > </span + ><a href="#local-0" + ><span class="hs-identifier hs-var" + >f2</span + ></a + ><span class="" + > </span + ><span class="hs-operator hs-var" + >*</span + ><span class="" + > </span + ><a href="Constructors.html#unfoo" + ><span class="hs-identifier hs-var" + >unfoo</span + ></a + ><span class="" + > </span + ><a href="#local-0" + ><span class="hs-identifier hs-var" + >fx</span + ></a + ><span class="" + > </span + ><span class="hs-operator hs-var" + >*</span + ><span class="" + > </span + ><a href="Constructors.html#unfoo" + ><span class="hs-identifier hs-var" + >unfoo</span + ></a + ><span class="" + > </span + ><a href="#local-0" + ><span class="hs-identifier hs-var" + >f3</span + ></a + ><span class="" + > + </span + ><a name="local-0" + ><a href="#local-0" + ><span class="hs-identifier" + >x'</span + ></a + ></a + ><span class="" + > </span + ><span class="hs-glyph" + >=</span + ><span class="" + > </span + ><span class="hs-identifier hs-var" + >sum</span + ><span class="" + > </span + ><span class="hs-operator hs-var" + >.</span + ><span class="" + > </span + ><span class="hs-identifier hs-var" + >map</span + ><span class="" + > </span + ><a href="Constructors.html#unfoo" + ><span class="hs-identifier hs-var" + >unfoo</span + ></a + ><span class="" + > </span + ><span class="hs-operator hs-var" + >.</span + ><span class="" + > </span + ><a href="Constructors.html#unnorf" + ><span class="hs-identifier hs-var" + >unnorf</span + ></a + ><span class="" + > </span + ><span class="hs-operator hs-var" + >$</span + ><span class="" + > </span + ><a href="#local-0" + ><span class="hs-identifier hs-var" + >x</span + ></a + ><span class="" + > </span ></pre ></body diff --git a/hypsrc-test/src/Constructors.hs b/hypsrc-test/src/Constructors.hs index c52bdc72..8cb46535 100644 --- a/hypsrc-test/src/Constructors.hs +++ b/hypsrc-test/src/Constructors.hs @@ -25,3 +25,11 @@ unnorf :: Norf -> [Foo] unnorf (Norf (Bar, xs, Bar)) = xs unnorf (Norf (Baz, xs, Baz)) = reverse xs unnorf _ = undefined + + +unnorf' :: Norf -> Int +unnorf' x@(Norf (f1@(Quux _ n), _, f2@(Quux f3 _))) = + x' + n * unfoo f1 + aux f3 + where + aux fx = unfoo f2 * unfoo fx * unfoo f3 + x' = sum . map unfoo . unnorf $ x |