packages feed

Unique 0.1.0.1 → 0.1.0.2

raw patch · 17 files changed

+9/−1065 lines, 17 files

Files

Data/List/Unique.hs view
@@ -8,7 +8,7 @@ -- Stability   :  Unstable -- Portability :  portable --------------------------------------------------------------------------------+-- Library provides the functions to find unique and duplicate elements in the list  module Data.List.Unique     (sortUniq @@ -22,6 +22,7 @@ import Data.List (sort,group,nub,filter,map,length) import Prelude hiding (map,filter,length)  + -- | 'sortUniq' sorts the list and removes the duplicates of elements. Example:  -- -- sortUniq "foo bar" == " abfor"@@ -39,7 +40,7 @@ repeated :: Ord a => [a] -> [a] repeated = map head . filterByLength (>1) --- | 'unique' gets only unique elements, those that do not have duplicates.  +-- | 'unique' gets only unique elements, that do not have duplicates.   -- It sorts them. Example:  -- --  unique  "foo bar" == " abfr"@@ -47,21 +48,21 @@ unique :: Ord a => [a] -> [a] unique = concat . filterByLength (==1) --- | 'count' the elements in the list, sorts by keys (elements). Example: +-- | 'count' of each element in the list, it sorts by keys (elements). Example:  -- --  count "foo bar" == [(' ',1),('a',1),('b',1),('f',1),('o',2),('r',1)]  count :: Ord a => [a] -> [(a, Int)] count = map (\x -> (head x,length x)) . group . sort --- | 'count_' the elements in the list, sorts by values. Example: +-- | 'count_' of each elements in the list, it sorts by their number. Example:  -- --  count_ "foo bar" == [(' ',1),('a',1),('b',1),('f',1),('r',1),('o',2)]  count_ :: Ord a => [a] -> [(a, Int)] count_ = map (\(x,y) -> (y,x)) . sort . map (\x -> (length x,head x)) . group . sort   --- | 'countElem' gets the amount of occurrences of the specified element. Example:  +-- | 'countElem' gets the number of occurrences of the specified element. Example:   -- --  countElem 'o' "foo bar" == Just 2 
Unique.cabal view
@@ -10,13 +10,13 @@ -- PVP summary:      +-+------- breaking API changes --                   | | +----- non-breaking API additions --                   | | | +--- code changes with no API change-version:             0.1.0.1+version:             0.1.0.2  -- A short (one-line) description of the package.-synopsis:            Provides with the functionality like unix "uniq" utility+synopsis:           It provides the functionality like unix "uniq" utility  -- A longer description of the package.-description:      Module provides with functions to find unique and duplicate elements in the list   +description:      Library provides the functions to find unique and duplicate elements in the list  -- The license under which the package is released. license:             BSD3
− docs/html/Unique/Data-List-Unique.html
@@ -1,5 +0,0 @@-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Data.List.Unique</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[-window.onload = function () {pageLoad();setSynopsis("mini_Data-List-Unique.html");};-//]]>-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Data-List-Unique.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">Unique-0.1.0.1: Provides with the functionality like unix &quot;uniq&quot; utility</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Copyright</th><td>(c) Volodymyr Yaschenko</td></tr><tr><th>License</th><td>BSD3</td></tr><tr><th>Maintainer</th><td>ualinuxcn@gmail.com</td></tr><tr><th>Stability</th><td>Unstable</td></tr><tr><th>Portability</th><td>portable</td></tr><tr><th>Safe Haskell</th><td>Safe-Inferred</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Data.List.Unique</p></div><div id="description"><p class="caption">Description</p><div class="doc empty">&nbsp;</div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:sortUniq">sortUniq</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; [a] -&gt; [a]</li><li class="src short"><a href="#v:repeated">repeated</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; [a] -&gt; [a]</li><li class="src short"><a href="#v:unique">unique</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; [a] -&gt; [a]</li><li class="src short"><a href="#v:count">count</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; [a] -&gt; [(a, <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Int.html#t:Int">Int</a>)]</li><li class="src short"><a href="#v:count_">count_</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; [a] -&gt; [(a, <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Int.html#t:Int">Int</a>)]</li><li class="src short"><a href="#v:countElem">countElem</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; a -&gt; [a] -&gt; <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Int.html#t:Int">Int</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:sortUniq" class="def">sortUniq</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; [a] -&gt; [a] <a href="src/Data-List-Unique.html#sortUniq" class="link">Source</a></p><div class="doc"><p><code><a href="Data-List-Unique.html#v:sortUniq">sortUniq</a></code> sorts the list and removes the duplicates of elements. Example: </p><p>sortUniq &quot;foo bar&quot; == &quot; abfor&quot;</p></div></div><div class="top"><p class="src"><a name="v:repeated" class="def">repeated</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; [a] -&gt; [a] <a href="src/Data-List-Unique.html#repeated" class="link">Source</a></p><div class="doc"><p><code><a href="Data-List-Unique.html#v:repeated">repeated</a></code> finds only the elements that are present more than once in the list. Example: </p><p>repeated  &quot;foo bar&quot; == &quot;o&quot; </p></div></div><div class="top"><p class="src"><a name="v:unique" class="def">unique</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; [a] -&gt; [a] <a href="src/Data-List-Unique.html#unique" class="link">Source</a></p><div class="doc"><p><code><a href="Data-List-Unique.html#v:unique">unique</a></code> gets only unique elements, those that do not have duplicates.  - It sorts them. Example: </p><p>unique  &quot;foo bar&quot; == &quot; abfr&quot;</p></div></div><div class="top"><p class="src"><a name="v:count" class="def">count</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; [a] -&gt; [(a, <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Int.html#t:Int">Int</a>)] <a href="src/Data-List-Unique.html#count" class="link">Source</a></p><div class="doc"><p><code><a href="Data-List-Unique.html#v:count">count</a></code> the elements in the list, sorts by keys (elements). Example: </p><p>count &quot;foo bar&quot; == [(' ',1),(<code>a</code>,1),(<code>b</code>,1),(<code>f</code>,1),(<code>o</code>,2),(<code>r</code>,1)]</p></div></div><div class="top"><p class="src"><a name="v:count_" class="def">count_</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; [a] -&gt; [(a, <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Int.html#t:Int">Int</a>)] <a href="src/Data-List-Unique.html#count_" class="link">Source</a></p><div class="doc"><p><code><a href="Data-List-Unique.html#v:count_">count_</a></code> the elements in the list, sorts by values. Example: </p><p>count_ &quot;foo bar&quot; == [(' ',1),(<code>a</code>,1),(<code>b</code>,1),(<code>f</code>,1),(<code>r</code>,1),(<code>o</code>,2)]</p></div></div><div class="top"><p class="src"><a name="v:countElem" class="def">countElem</a> :: <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Ord.html#t:Ord">Ord</a> a =&gt; a -&gt; [a] -&gt; <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/local/share/doc/ghc/html/libraries/base-4.7.0.1/Data-Int.html#t:Int">Int</a> <a href="src/Data-List-Unique.html#countElem" class="link">Source</a></p><div class="doc"><p><code><a href="Data-List-Unique.html#v:countElem">countElem</a></code> gets the amount of occurrences of the specified element. Example:  </p><p>countElem <code>o</code> &quot;foo bar&quot; == Just 2</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.14.3</p></div></body></html>
− docs/html/Unique/Unique.haddock

binary file changed (3588 → absent bytes)

− docs/html/Unique/doc-index.html
@@ -1,4 +0,0 @@-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Unique-0.1.0.1: Provides with the functionality like unix &quot;uniq&quot; utility (Index)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[-window.onload = function () {pageLoad();};-//]]>-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">Unique-0.1.0.1: Provides with the functionality like unix &quot;uniq&quot; utility</p></div><div id="content"><div id="index"><p class="caption">Index</p><table><tr><td class="src">count</td><td class="module"><a href="Data-List-Unique.html#v:count">Data.List.Unique</a></td></tr><tr><td class="src">countElem</td><td class="module"><a href="Data-List-Unique.html#v:countElem">Data.List.Unique</a></td></tr><tr><td class="src">count_</td><td class="module"><a href="Data-List-Unique.html#v:count_">Data.List.Unique</a></td></tr><tr><td class="src">repeated</td><td class="module"><a href="Data-List-Unique.html#v:repeated">Data.List.Unique</a></td></tr><tr><td class="src">sortUniq</td><td class="module"><a href="Data-List-Unique.html#v:sortUniq">Data.List.Unique</a></td></tr><tr><td class="src">unique</td><td class="module"><a href="Data-List-Unique.html#v:unique">Data.List.Unique</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.14.3</p></div></body></html>
− docs/html/Unique/frames.html
@@ -1,30 +0,0 @@-<!DOCTYPE html -     PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"-     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">-<html xmlns="http://www.w3.org/1999/xhtml">-<head>-<title></title>-<script src="haddock-util.js" type="text/javascript"></script>-<script type="text/javascript"><!---/*--  The synopsis frame needs to be updated using javascript, so we hide-  it by default and only show it if javascript is enabled.--  TODO: provide some means to disable it.-*/-function load() {-  var d = document.getElementById("inner-fs");-  d.rows = "50%,50%";-  postReframe();-}---></script>-</head>-<frameset id="outer-fs" cols="25%,75%" onload="load()">-  <frameset id="inner-fs" rows="100%,0%">-    <frame src="index-frames.html" name="modules" />-    <frame src="" name="synopsis" />-  </frameset>-  <frame src="index.html" name="main" />-</frameset>-</html>
− docs/html/Unique/haddock-util.js
@@ -1,344 +0,0 @@-// Haddock JavaScript utilities--var rspace = /\s\s+/g,-	  rtrim = /^\s+|\s+$/g;--function spaced(s) { return (" " + s + " ").replace(rspace, " "); }-function trim(s)   { return s.replace(rtrim, ""); }--function hasClass(elem, value) {-  var className = spaced(elem.className || "");-  return className.indexOf( " " + value + " " ) >= 0;-}--function addClass(elem, value) {-  var className = spaced(elem.className || "");-  if ( className.indexOf( " " + value + " " ) < 0 ) {-    elem.className = trim(className + " " + value);-  }-}--function removeClass(elem, value) {-  var className = spaced(elem.className || "");-  className = className.replace(" " + value + " ", " ");-  elem.className = trim(className);-}--function toggleClass(elem, valueOn, valueOff, bool) {-  if (bool == null) { bool = ! hasClass(elem, valueOn); }-  if (bool) {-    removeClass(elem, valueOff);-    addClass(elem, valueOn);-  }-  else {-    removeClass(elem, valueOn);-    addClass(elem, valueOff);-  }-  return bool;-}---function makeClassToggle(valueOn, valueOff)-{-  return function(elem, bool) {-    return toggleClass(elem, valueOn, valueOff, bool);-  }-}--toggleShow = makeClassToggle("show", "hide");-toggleCollapser = makeClassToggle("collapser", "expander");--function toggleSection(id)-{-  var b = toggleShow(document.getElementById("section." + id));-  toggleCollapser(document.getElementById("control." + id), b);-  rememberCollapsed(id, b);-  return b;-}--var collapsed = {};-function rememberCollapsed(id, b)-{-  if(b)-    delete collapsed[id]-  else-    collapsed[id] = null;--  var sections = [];-  for(var i in collapsed)-  {-    if(collapsed.hasOwnProperty(i))-      sections.push(i);-  }-  // cookie specific to this page; don't use setCookie which sets path=/-  document.cookie = "collapsed=" + escape(sections.join('+'));-}--function restoreCollapsed()-{-  var cookie = getCookie("collapsed");-  if(!cookie)-    return;--  var ids = cookie.split('+');-  for(var i in ids)-  {-    if(document.getElementById("section." + ids[i]))-      toggleSection(ids[i]);-  }-}--function setCookie(name, value) {-  document.cookie = name + "=" + escape(value) + ";path=/;";-}--function clearCookie(name) {-  document.cookie = name + "=;path=/;expires=Thu, 01-Jan-1970 00:00:01 GMT;";-}--function getCookie(name) {-  var nameEQ = name + "=";-  var ca = document.cookie.split(';');-  for(var i=0;i < ca.length;i++) {-    var c = ca[i];-    while (c.charAt(0)==' ') c = c.substring(1,c.length);-    if (c.indexOf(nameEQ) == 0) {-      return unescape(c.substring(nameEQ.length,c.length));-    }-  }-  return null;-}----var max_results = 75; // 50 is not enough to search for map in the base libraries-var shown_range = null;-var last_search = null;--function quick_search()-{-    perform_search(false);-}--function full_search()-{-    perform_search(true);-}---function perform_search(full)-{-    var text = document.getElementById("searchbox").value.toLowerCase();-    if (text == last_search && !full) return;-    last_search = text;-    -    var table = document.getElementById("indexlist");-    var status = document.getElementById("searchmsg");-    var children = table.firstChild.childNodes;-    -    // first figure out the first node with the prefix-    var first = bisect(-1);-    var last = (first == -1 ? -1 : bisect(1));--    if (first == -1)-    {-        table.className = "";-        status.innerHTML = "No results found, displaying all";-    }-    else if (first == 0 && last == children.length - 1)-    {-        table.className = "";-        status.innerHTML = "";-    }-    else if (last - first >= max_results && !full)-    {-        table.className = "";-        status.innerHTML = "More than " + max_results + ", press Search to display";-    }-    else-    {-        // decide what you need to clear/show-        if (shown_range)-            setclass(shown_range[0], shown_range[1], "indexrow");-        setclass(first, last, "indexshow");-        shown_range = [first, last];-        table.className = "indexsearch";-        status.innerHTML = "";-    }--    -    function setclass(first, last, status)-    {-        for (var i = first; i <= last; i++)-        {-            children[i].className = status;-        }-    }-    -    -    // do a binary search, treating 0 as ...-    // return either -1 (no 0's found) or location of most far match-    function bisect(dir)-    {-        var first = 0, finish = children.length - 1;-        var mid, success = false;--        while (finish - first > 3)-        {-            mid = Math.floor((finish + first) / 2);--            var i = checkitem(mid);-            if (i == 0) i = dir;-            if (i == -1)-                finish = mid;-            else-                first = mid;-        }-        var a = (dir == 1 ? first : finish);-        var b = (dir == 1 ? finish : first);-        for (var i = b; i != a - dir; i -= dir)-        {-            if (checkitem(i) == 0) return i;-        }-        return -1;-    }    -    -    -    // from an index, decide what the result is-    // 0 = match, -1 is lower, 1 is higher-    function checkitem(i)-    {-        var s = getitem(i).toLowerCase().substr(0, text.length);-        if (s == text) return 0;-        else return (s > text ? -1 : 1);-    }-    -    -    // from an index, get its string-    // this abstracts over alternates-    function getitem(i)-    {-        for ( ; i >= 0; i--)-        {-            var s = children[i].firstChild.firstChild.data;-            if (s.indexOf(' ') == -1)-                return s;-        }-        return ""; // should never be reached-    }-}--function setSynopsis(filename) {-    if (parent.window.synopsis) {-        if (parent.window.synopsis.location.replace) {-            // In Firefox this avoids adding the change to the history.-            parent.window.synopsis.location.replace(filename);-        } else {-            parent.window.synopsis.location = filename;-        }-    }-}--function addMenuItem(html) {-  var menu = document.getElementById("page-menu");-  if (menu) {-    var btn = menu.firstChild.cloneNode(false);-    btn.innerHTML = html;-    menu.appendChild(btn);-  }-}--function adjustForFrames() {-  var bodyCls;-  -  if (parent.location.href == window.location.href) {-    // not in frames, so add Frames button-    addMenuItem("<a href='#' onclick='reframe();return true;'>Frames</a>");-    bodyCls = "no-frame";-  }-  else {-    bodyCls = "in-frame";-  }-  addClass(document.body, bodyCls);-}--function reframe() {-  setCookie("haddock-reframe", document.URL);-  window.location = "frames.html";-}--function postReframe() {-  var s = getCookie("haddock-reframe");-  if (s) {-    parent.window.main.location = s;-    clearCookie("haddock-reframe");-  }-}--function styles() {-  var i, a, es = document.getElementsByTagName("link"), rs = [];-  for (i = 0; a = es[i]; i++) {-    if(a.rel.indexOf("style") != -1 && a.title) {-      rs.push(a);-    }-  }-  return rs;-}--function addStyleMenu() {-  var as = styles();-  var i, a, btns = "";-  for(i=0; a = as[i]; i++) {-    btns += "<li><a href='#' onclick=\"setActiveStyleSheet('"-      + a.title + "'); return false;\">"-      + a.title + "</a></li>"-  }-  if (as.length > 1) {-    var h = "<div id='style-menu-holder'>"-      + "<a href='#' onclick='styleMenu(); return false;'>Style &#9662;</a>"-      + "<ul id='style-menu' class='hide'>" + btns + "</ul>"-      + "</div>";-    addMenuItem(h);-  }-}--function setActiveStyleSheet(title) {-  var as = styles();-  var i, a, found;-  for(i=0; a = as[i]; i++) {-    a.disabled = true;-          // need to do this always, some browsers are edge triggered-    if(a.title == title) {-      found = a;-    }-  }-  if (found) {-    found.disabled = false;-    setCookie("haddock-style", title);-  }-  else {-    as[0].disabled = false;-    clearCookie("haddock-style");-  }-  styleMenu(false);-}--function resetStyle() {-  var s = getCookie("haddock-style");-  if (s) setActiveStyleSheet(s);-}---function styleMenu(show) {-  var m = document.getElementById('style-menu');-  if (m) toggleShow(m, show);-}---function pageLoad() {-  addStyleMenu();-  adjustForFrames();-  resetStyle();-  restoreCollapsed();-}-
− docs/html/Unique/hslogo-16.png

binary file changed (1684 → absent bytes)

− docs/html/Unique/index-frames.html
@@ -1,4 +0,0 @@-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Unique-0.1.0.1: Provides with the functionality like unix &quot;uniq&quot; utility</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[-window.onload = function () {pageLoad();};-//]]>-</script></head><body id="mini"><div id="module-list"><p class="caption">Modules</p><ul><li class="module"><a href="Data-List-Unique.html" target="main">Data.List.Unique</a></li></ul></div></body></html>
− docs/html/Unique/index.html
@@ -1,4 +0,0 @@-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Unique-0.1.0.1: Provides with the functionality like unix &quot;uniq&quot; utility</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[-window.onload = function () {pageLoad();};-//]]>-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">Unique-0.1.0.1: Provides with the functionality like unix &quot;uniq&quot; utility</p></div><div id="content"><div id="description"><h1>Unique-0.1.0.1: Provides with the functionality like unix &quot;uniq&quot; utility</h1><div class="doc"><p>Module provides with functions to find unique and duplicate elements in the list</p></div></div><div id="module-list"><p class="caption">Modules</p><ul><li><span id="control.n.1" class="module collapser" onclick="toggleSection('n.1')">Data</span><ul id="section.n.1" class="show"><li><span id="control.n.1.1" class="module collapser" onclick="toggleSection('n.1.1')">List</span><ul id="section.n.1.1" class="show"><li><span class="module"><a href="Data-List-Unique.html">Data.List.Unique</a></span></li></ul></li></ul></li></ul></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.14.3</p></div></body></html>
− docs/html/Unique/mini_Data-List-Unique.html
@@ -1,4 +0,0 @@-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Data.List.Unique</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[-window.onload = function () {pageLoad();};-//]]>-</script></head><body id="mini"><div id="module-header"><p class="caption">Data.List.Unique</p></div><div id="interface"><div class="top"><p class="src"><a href="Data-List-Unique.html#v:sortUniq" target="main">sortUniq</a></p></div><div class="top"><p class="src"><a href="Data-List-Unique.html#v:repeated" target="main">repeated</a></p></div><div class="top"><p class="src"><a href="Data-List-Unique.html#v:unique" target="main">unique</a></p></div><div class="top"><p class="src"><a href="Data-List-Unique.html#v:count" target="main">count</a></p></div><div class="top"><p class="src"><a href="Data-List-Unique.html#v:count_" target="main">count_</a></p></div><div class="top"><p class="src"><a href="Data-List-Unique.html#v:countElem" target="main">countElem</a></p></div></div></body></html>
− docs/html/Unique/minus.gif

binary file changed (56 → absent bytes)

− docs/html/Unique/ocean.css
@@ -1,577 +0,0 @@-/* @group Fundamentals */--* { margin: 0; padding: 0 }--/* Is this portable? */-html {-  background-color: white;-  width: 100%;-  height: 100%;-}--body {-  background: white;-  color: black;-  text-align: left;-  min-height: 100%;-  position: relative;-}--p {-  margin: 0.8em 0;-}--ul, ol {-  margin: 0.8em 0 0.8em 2em;-}--dl {-  margin: 0.8em 0;-}--dt {-  font-weight: bold;-}-dd {-  margin-left: 2em;-}--a { text-decoration: none; }-a[href]:link { color: rgb(196,69,29); }-a[href]:visited { color: rgb(171,105,84); }-a[href]:hover { text-decoration:underline; }--/* @end */--/* @group Fonts & Sizes */--/* Basic technique & IE workarounds from YUI 3-   For reasons, see:-      http://yui.yahooapis.com/3.1.1/build/cssfonts/fonts.css- */--body {-	font:13px/1.4 sans-serif;-	*font-size:small; /* for IE */-	*font:x-small; /* for IE in quirks mode */-}--h1 { font-size: 146.5%; /* 19pt */ }-h2 { font-size: 131%;   /* 17pt */ }-h3 { font-size: 116%;   /* 15pt */ }-h4 { font-size: 100%;   /* 13pt */ }-h5 { font-size: 100%;   /* 13pt */ }--select, input, button, textarea {-	font:99% sans-serif;-}--table {-	font-size:inherit;-	font:100%;-}--pre, code, kbd, samp, tt, .src {-	font-family:monospace;-	*font-size:108%;-	line-height: 124%;-}--.links, .link {-  font-size: 85%; /* 11pt */-}--#module-header .caption {-  font-size: 182%; /* 24pt */-}--.info  {-  font-size: 85%; /* 11pt */-}--#table-of-contents, #synopsis  {-  /* font-size: 85%; /* 11pt */-}---/* @end */--/* @group Common */--.caption, h1, h2, h3, h4, h5, h6 {-  font-weight: bold;-  color: rgb(78,98,114);-  margin: 0.8em 0 0.4em;-}--* + h1, * + h2, * + h3, * + h4, * + h5, * + h6 {-  margin-top: 2em;-}--h1 + h2, h2 + h3, h3 + h4, h4 + h5, h5 + h6 {-  margin-top: inherit;-}--ul.links {-  list-style: none;-  text-align: left;-  float: right;-  display: inline-table;-  margin: 0 0 0 1em;-}--ul.links li {-  display: inline;-  border-left: 1px solid #d5d5d5;-  white-space: nowrap;-  padding: 0;-}--ul.links li a {-  padding: 0.2em 0.5em;-}--.hide { display: none; }-.show { display: inherit; }-.clear { clear: both; }--.collapser {-  background-image: url(minus.gif);-  background-repeat: no-repeat;-}-.expander {-  background-image: url(plus.gif);-  background-repeat: no-repeat;-}-p.caption.collapser,-p.caption.expander {-  background-position: 0 0.4em;-}-.collapser, .expander {-  padding-left: 14px;-  margin-left: -14px;-  cursor: pointer;-}--pre {-  padding: 0.25em;-  margin: 0.8em 0;-  background: rgb(229,237,244);-  overflow: auto;-  border-bottom: 0.25em solid white;-  /* white border adds some space below the box to compensate-     for visual extra space that paragraphs have between baseline-     and the bounding box */-}--.src {-  background: #f0f0f0;-  padding: 0.2em 0.5em;-}--.keyword { font-weight: normal; }-.def { font-weight: bold; }---/* @end */--/* @group Page Structure */--#content {-  margin: 0 auto;-  padding: 0 2em 6em;-}--#package-header {-  background: rgb(41,56,69);-  border-top: 5px solid rgb(78,98,114);-  color: #ddd;-  padding: 0.2em;-  position: relative;-  text-align: left;-}--#package-header .caption {-  background: url(hslogo-16.png) no-repeat 0em;-  color: white;-  margin: 0 2em;-  font-weight: normal;-  font-style: normal;-  padding-left: 2em;-}--#package-header a:link, #package-header a:visited { color: white; }-#package-header a:hover { background: rgb(78,98,114); }--#module-header .caption {-  color: rgb(78,98,114);-  font-weight: bold;-  border-bottom: 1px solid #ddd;-}--table.info {-  float: right;-  padding: 0.5em 1em;-  border: 1px solid #ddd;-  color: rgb(78,98,114);-  background-color: #fff;-  max-width: 40%;-  border-spacing: 0;-  position: relative;-  top: -0.5em;-  margin: 0 0 0 2em;-}--.info th {-	padding: 0 1em 0 0;-}--div#style-menu-holder {-  position: relative;-  z-index: 2;-  display: inline;-}--#style-menu {-  position: absolute;-  z-index: 1;-  overflow: visible;-  background: #374c5e;-  margin: 0;-  text-align: center;-  right: 0;-  padding: 0;-  top: 1.25em;-}--#style-menu li {-	display: list-item;-	border-style: none;-	margin: 0;-	padding: 0;-	color: #000;-	list-style-type: none;-}--#style-menu li + li {-	border-top: 1px solid #919191;-}--#style-menu a {-  width: 6em;-  padding: 3px;-  display: block;-}--#footer {-  background: #ddd;-  border-top: 1px solid #aaa;-  padding: 0.5em 0;-  color: #666;-  text-align: center;-  position: absolute;-  bottom: 0;-  width: 100%;-  height: 3em;-}--/* @end */--/* @group Front Matter */--#table-of-contents {-  float: right;-  clear: right;-  background: #faf9dc;-  border: 1px solid #d8d7ad;-  padding: 0.5em 1em;-  max-width: 20em;-  margin: 0.5em 0 1em 1em;-}--#table-of-contents .caption {-  text-align: center;-  margin: 0;-}--#table-of-contents ul {-  list-style: none;-  margin: 0;-}--#table-of-contents ul ul {-  margin-left: 2em;-}--#description .caption {-  display: none;-}--#synopsis {-  display: none;-}--.no-frame #synopsis {-  display: block;-  position: fixed;-  right: 0;-  height: 80%;-  top: 10%;-  padding: 0;-}--#synopsis .caption {-  float: left;-  width: 29px;-  color: rgba(255,255,255,0);-  height: 110px;-  margin: 0;-  font-size: 1px;-  padding: 0;-}--#synopsis p.caption.collapser {-  background: url(synopsis.png) no-repeat -64px -8px;-}--#synopsis p.caption.expander {-  background: url(synopsis.png) no-repeat 0px -8px;-}--#synopsis ul {-  height: 100%;-  overflow: auto;-  padding: 0.5em;-  margin: 0;-}--#synopsis ul ul {-  overflow: hidden;-}--#synopsis ul,-#synopsis ul li.src {-  background-color: #faf9dc;-  white-space: nowrap;-  list-style: none;-  margin-left: 0;-}--/* @end */--/* @group Main Content */--#interface div.top { margin: 2em 0; }-#interface h1 + div.top,-#interface h2 + div.top,-#interface h3 + div.top,-#interface h4 + div.top,-#interface h5 + div.top {- 	margin-top: 1em;-}-#interface p.src .link {-  float: right;-  color: #919191;-  border-left: 1px solid #919191;-  background: #f0f0f0;-  padding: 0 0.5em 0.2em;-  margin: 0 -0.5em 0 0.5em;-}--#interface span.fixity {-  color: #919191;-  border-left: 1px solid #919191;-  padding: 0.2em 0.5em 0.2em 0.5em;-  margin: 0 -1em 0 1em;-}--#interface span.rightedge {-  border-left: 1px solid #919191;-  padding: 0.2em 0 0.2em 0;-  margin: 0 0 0 1em;-}--#interface table { border-spacing: 2px; }-#interface td {-  vertical-align: top;-  padding-left: 0.5em;-}-#interface td.src {-  white-space: nowrap;-}-#interface td.doc p {-  margin: 0;-}-#interface td.doc p + p {-  margin-top: 0.8em;-}--.subs dl {-  margin: 0;-}--.subs dt {-  float: left;-  clear: left;-  display: block;-  margin: 1px 0;-}--.subs dd {-  float: right;-  width: 90%;-  display: block;-  padding-left: 0.5em;-  margin-bottom: 0.5em;-}--.subs dd.empty {-  display: none;-}--.subs dd p {-  margin: 0;-}--/* Render short-style data instances */-.inst ul {-  height: 100%;-  padding: 0.5em;-  margin: 0;-}--.inst, .inst li {-  list-style: none;-  margin-left: 1em;-}--.top p.src {-  border-top: 1px solid #ccc;-}--.subs, .doc {-  /* use this selector for one level of indent */-  padding-left: 2em;-}--.warning {-  color: red;-}--.arguments {-  margin-top: -0.4em;-}-.arguments .caption {-  display: none;-}--.fields { padding-left: 1em; }--.fields .caption { display: none; }--.fields p { margin: 0 0; }--/* this seems bulky to me-.methods, .constructors {-  background: #f8f8f8;-  border: 1px solid #eee;-}-*/--/* @end */--/* @group Auxillary Pages */---.extension-list {-    list-style-type: none;-    margin-left: 0;-}--#mini {-  margin: 0 auto;-  padding: 0 1em 1em;-}--#mini > * {-  font-size: 93%; /* 12pt */-}--#mini #module-list .caption,-#mini #module-header .caption {-  font-size: 125%; /* 15pt */-}--#mini #interface h1,-#mini #interface h2,-#mini #interface h3,-#mini #interface h4 {-  font-size: 109%; /* 13pt */-  margin: 1em 0 0;-}--#mini #interface .top,-#mini #interface .src {-  margin: 0;-}--#mini #module-list ul {-  list-style: none;-  margin: 0;-}--#alphabet ul {-	list-style: none;-	padding: 0;-	margin: 0.5em 0 0;-	text-align: center;-}--#alphabet li {-	display: inline;-	margin: 0 0.25em;-}--#alphabet a {-	font-weight: bold;-}--#index .caption,-#module-list .caption { font-size: 131%; /* 17pt */ }--#index table {-  margin-left: 2em;-}--#index .src {-  font-weight: bold;-}-#index .alt {-  font-size: 77%; /* 10pt */-  font-style: italic;-  padding-left: 2em;-}--#index td + td {-  padding-left: 1em;-}--#module-list ul {-  list-style: none;-  margin: 0 0 0 2em;-}--#module-list li {-  clear: right;-}--#module-list span.collapser,-#module-list span.expander {-  background-position: 0 0.3em;-}--#module-list .package {-  float: right;-}--/* @end */
− docs/html/Unique/plus.gif

binary file changed (59 → absent bytes)

− docs/html/Unique/src/Data-List-Unique.html
@@ -1,80 +0,0 @@-<?xml version="1.0" encoding="UTF-8"?>-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">-<html>-<head>-<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->-<title>Data/List/Unique.hs</title>-<link type='text/css' rel='stylesheet' href='hscolour.css' />-</head>-<body>-<pre><a name="line-1"></a><span class='hs-comment'>-----------------------------------------------------------------------------</span>-<a name="line-2"></a><span class='hs-comment'>-- |</span>-<a name="line-3"></a><span class='hs-comment'>-- Module      :  Data.List.Unique</span>-<a name="line-4"></a><span class='hs-comment'>-- Copyright   :  (c) Volodymyr Yaschenko</span>-<a name="line-5"></a><span class='hs-comment'>-- License     :  BSD3</span>-<a name="line-6"></a><span class='hs-comment'>-- </span>-<a name="line-7"></a><span class='hs-comment'>-- Maintainer  :  ualinuxcn@gmail.com</span>-<a name="line-8"></a><span class='hs-comment'>-- Stability   :  Unstable</span>-<a name="line-9"></a><span class='hs-comment'>-- Portability :  portable</span>-<a name="line-10"></a><span class='hs-comment'>--</span>-<a name="line-11"></a><span class='hs-comment'>-----------------------------------------------------------------------------</span>-<a name="line-12"></a>-<a name="line-13"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>Unique</span> -<a name="line-14"></a>   <span class='hs-layout'>(</span><span class='hs-varid'>sortUniq</span> -<a name="line-15"></a>  <span class='hs-layout'>,</span> <span class='hs-varid'>repeated</span>-<a name="line-16"></a>  <span class='hs-layout'>,</span> <span class='hs-varid'>unique</span>-<a name="line-17"></a>  <span class='hs-layout'>,</span> <span class='hs-varid'>count</span>-<a name="line-18"></a>  <span class='hs-layout'>,</span> <span class='hs-varid'>count_</span>-<a name="line-19"></a>  <span class='hs-layout'>,</span> <span class='hs-varid'>countElem</span>-<a name="line-20"></a>    <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span> -<a name="line-21"></a>-<a name="line-22"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span> <span class='hs-layout'>(</span><span class='hs-varid'>sort</span><span class='hs-layout'>,</span><span class='hs-varid'>group</span><span class='hs-layout'>,</span><span class='hs-varid'>nub</span><span class='hs-layout'>,</span><span class='hs-varid'>filter</span><span class='hs-layout'>,</span><span class='hs-varid'>map</span><span class='hs-layout'>,</span><span class='hs-varid'>length</span><span class='hs-layout'>)</span>-<a name="line-23"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Prelude</span> <span class='hs-varid'>hiding</span> <span class='hs-layout'>(</span><span class='hs-varid'>map</span><span class='hs-layout'>,</span><span class='hs-varid'>filter</span><span class='hs-layout'>,</span><span class='hs-varid'>length</span><span class='hs-layout'>)</span> -<a name="line-24"></a>-<a name="line-25"></a><span class='hs-comment'>-- | 'sortUniq' sorts the list and removes the duplicates of elements. Example: </span>-<a name="line-26"></a><span class='hs-comment'>--</span>-<a name="line-27"></a><span class='hs-comment'>-- sortUniq "foo bar" == " abfor"</span>-<a name="line-28"></a>-<a name="line-29"></a><a name="sortUniq"></a><span class='hs-definition'>sortUniq</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ord</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span>-<a name="line-30"></a><span class='hs-definition'>sortUniq</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>nub</span> <span class='hs-varop'>.</span> <span class='hs-varid'>sort</span>-<a name="line-31"></a>-<a name="line-32"></a><a name="filterByLength"></a><span class='hs-definition'>filterByLength</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ord</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span><span class='hs-keyglyph'>]</span>-<a name="line-33"></a><span class='hs-definition'>filterByLength</span> <span class='hs-varid'>p</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>filter</span> <span class='hs-layout'>(</span><span class='hs-varid'>p</span> <span class='hs-varop'>.</span> <span class='hs-varid'>length</span><span class='hs-layout'>)</span> <span class='hs-varop'>.</span> <span class='hs-varid'>group</span> <span class='hs-varop'>.</span> <span class='hs-varid'>sort</span>-<a name="line-34"></a>-<a name="line-35"></a><span class='hs-comment'>-- | 'repeated' finds only the elements that are present more than once in the list. Example: </span>-<a name="line-36"></a><span class='hs-comment'>--</span>-<a name="line-37"></a><span class='hs-comment'>--  repeated  "foo bar" == "o" </span>-<a name="line-38"></a>-<a name="line-39"></a><a name="repeated"></a><span class='hs-definition'>repeated</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ord</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span>-<a name="line-40"></a><span class='hs-definition'>repeated</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>map</span> <span class='hs-varid'>head</span> <span class='hs-varop'>.</span> <span class='hs-varid'>filterByLength</span> <span class='hs-layout'>(</span><span class='hs-varop'>&gt;</span><span class='hs-num'>1</span><span class='hs-layout'>)</span>-<a name="line-41"></a>-<a name="line-42"></a><span class='hs-comment'>-- | 'unique' gets only unique elements, those that do not have duplicates.  </span>-<a name="line-43"></a><span class='hs-comment'>-- It sorts them. Example: </span>-<a name="line-44"></a><span class='hs-comment'>--</span>-<a name="line-45"></a><span class='hs-comment'>--  unique  "foo bar" == " abfr"</span>-<a name="line-46"></a>  -<a name="line-47"></a><a name="unique"></a><span class='hs-definition'>unique</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ord</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span>-<a name="line-48"></a><span class='hs-definition'>unique</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>concat</span> <span class='hs-varop'>.</span> <span class='hs-varid'>filterByLength</span> <span class='hs-layout'>(</span><span class='hs-varop'>==</span><span class='hs-num'>1</span><span class='hs-layout'>)</span>-<a name="line-49"></a>-<a name="line-50"></a><span class='hs-comment'>-- | 'count' the elements in the list, sorts by keys (elements). Example: </span>-<a name="line-51"></a><span class='hs-comment'>--</span>-<a name="line-52"></a><span class='hs-comment'>--  count "foo bar" == [(' ',1),('a',1),('b',1),('f',1),('o',2),('r',1)]</span>-<a name="line-53"></a>-<a name="line-54"></a><a name="count"></a><span class='hs-definition'>count</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ord</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-layout'>(</span><span class='hs-varid'>a</span><span class='hs-layout'>,</span> <span class='hs-conid'>Int</span><span class='hs-layout'>)</span><span class='hs-keyglyph'>]</span>-<a name="line-55"></a><span class='hs-definition'>count</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>map</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>x</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-varid'>head</span> <span class='hs-varid'>x</span><span class='hs-layout'>,</span><span class='hs-varid'>length</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-varop'>.</span> <span class='hs-varid'>group</span> <span class='hs-varop'>.</span> <span class='hs-varid'>sort</span>-<a name="line-56"></a>-<a name="line-57"></a><span class='hs-comment'>-- | 'count_' the elements in the list, sorts by values. Example: </span>-<a name="line-58"></a><span class='hs-comment'>--</span>-<a name="line-59"></a><span class='hs-comment'>--  count_ "foo bar" == [(' ',1),('a',1),('b',1),('f',1),('r',1),('o',2)]</span>-<a name="line-60"></a>-<a name="line-61"></a><a name="count_"></a><span class='hs-definition'>count_</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ord</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-layout'>(</span><span class='hs-varid'>a</span><span class='hs-layout'>,</span> <span class='hs-conid'>Int</span><span class='hs-layout'>)</span><span class='hs-keyglyph'>]</span>-<a name="line-62"></a><span class='hs-definition'>count_</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>map</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-varid'>x</span><span class='hs-layout'>,</span><span class='hs-varid'>y</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-varid'>y</span><span class='hs-layout'>,</span><span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-varop'>.</span> <span class='hs-varid'>sort</span> <span class='hs-varop'>.</span> <span class='hs-varid'>map</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>x</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-varid'>length</span> <span class='hs-varid'>x</span><span class='hs-layout'>,</span><span class='hs-varid'>head</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-varop'>.</span> <span class='hs-varid'>group</span> <span class='hs-varop'>.</span> <span class='hs-varid'>sort</span>  -<a name="line-63"></a>-<a name="line-64"></a><span class='hs-comment'>-- | 'countElem' gets the amount of occurrences of the specified element. Example:  </span>-<a name="line-65"></a><span class='hs-comment'>--</span>-<a name="line-66"></a><span class='hs-comment'>--  countElem 'o' "foo bar" == Just 2</span>-<a name="line-67"></a>-<a name="line-68"></a><a name="countElem"></a><span class='hs-definition'>countElem</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ord</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=&gt;</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>Int</span>-<a name="line-69"></a><span class='hs-definition'>countElem</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>lookup</span> <span class='hs-varid'>x</span> <span class='hs-varop'>.</span> <span class='hs-varid'>count</span>-</pre></body>-</html>
− docs/html/Unique/src/hscolour.css
@@ -1,5 +0,0 @@-.hs-keyglyph, .hs-layout {color: red;}-.hs-keyword {color: blue;}-.hs-comment, .hs-comment a {color: green;}-.hs-str, .hs-chr {color: teal;}-.hs-keyword, .hs-conid, .hs-varid, .hs-conop, .hs-varop, .hs-num, .hs-cpp, .hs-sel, .hs-definition {}
− docs/html/Unique/synopsis.png

binary file changed (11327 → absent bytes)