This file is indexed.

/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html is in libghc-mono-traversable-doc 0.10.0.1-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<!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.Containers</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-Containers.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Data-Containers.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">mono-traversable-0.10.0.1: Type classes for mapping, folding, and traversing monomorphic containers</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Data.Containers</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Warning: This module should be considered highly experimental.</p></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"><span class="keyword">class</span> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Monoid.html#t:Monoid">Monoid</a> set, <a href="file:///usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Semigroup">Semigroup</a> set, <a href="Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> set, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> set), <a href="Data-MinLen.html#t:GrowingAppend">GrowingAppend</a> set) =&gt; <a href="#t:SetContainer">SetContainer</a> set <span class="keyword">where</span><ul class="subs"><li><span class="keyword">type</span> <a href="#t:ContainerKey">ContainerKey</a> set</li><li><a href="#v:member">member</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> set -&gt; set -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li><li><a href="#v:notMember">notMember</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> set -&gt; set -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a></li><li><a href="#v:union">union</a> :: set -&gt; set -&gt; set</li><li><a href="#v:difference">difference</a> :: set -&gt; set -&gt; set</li><li><a href="#v:intersection">intersection</a> :: set -&gt; set -&gt; set</li><li><a href="#v:keys">keys</a> :: set -&gt; [<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> set]</li></ul></li><li class="src short"><span class="keyword">class</span> <a href="#t:PolyMap">PolyMap</a> map <span class="keyword">where</span><ul class="subs"><li><a href="#v:differenceMap">differenceMap</a> :: map value1 -&gt; map value2 -&gt; map value1</li><li><a href="#v:intersectionMap">intersectionMap</a> :: map value1 -&gt; map value2 -&gt; map value1</li><li><a href="#v:intersectionWithMap">intersectionWithMap</a> :: (value1 -&gt; value2 -&gt; value3) -&gt; map value1 -&gt; map value2 -&gt; map value3</li></ul></li><li class="src short"><span class="keyword">class</span> <a href="#t:BiPolyMap">BiPolyMap</a> map <span class="keyword">where</span><ul class="subs"><li><span class="keyword">type</span> <a href="#t:BPMKeyConstraint">BPMKeyConstraint</a> map key :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/GHC-Exts.html#t:Constraint">Constraint</a></li><li><a href="#v:mapKeysWith">mapKeysWith</a> :: (<a href="Data-Containers.html#t:BPMKeyConstraint">BPMKeyConstraint</a> map k1, <a href="Data-Containers.html#t:BPMKeyConstraint">BPMKeyConstraint</a> map k2) =&gt; (v -&gt; v -&gt; v) -&gt; (k1 -&gt; k2) -&gt; map k1 v -&gt; map k2 v</li></ul></li><li class="src short"><span class="keyword">class</span> (<a href="Data-MonoTraversable.html#t:MonoTraversable">MonoTraversable</a> map, <a href="Data-Containers.html#t:SetContainer">SetContainer</a> map) =&gt; <a href="#t:IsMap">IsMap</a> map <span class="keyword">where</span><ul class="subs"><li><span class="keyword">type</span> <a href="#t:MapValue">MapValue</a> map</li><li><a href="#v:lookup">lookup</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map)</li><li><a href="#v:insertMap">insertMap</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; map -&gt; map</li><li><a href="#v:deleteMap">deleteMap</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; map</li><li><a href="#v:singletonMap">singletonMap</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; map</li><li><a href="#v:mapFromList">mapFromList</a> :: [(<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map, <a href="Data-Containers.html#t:MapValue">MapValue</a> map)] -&gt; map</li><li><a href="#v:mapToList">mapToList</a> :: map -&gt; [(<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map, <a href="Data-Containers.html#t:MapValue">MapValue</a> map)]</li><li><a href="#v:findWithDefault">findWithDefault</a> :: <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map</li><li><a href="#v:insertWith">insertWith</a> :: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; map -&gt; map</li><li><a href="#v:insertWithKey">insertWithKey</a> :: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; map -&gt; map</li><li><a href="#v:insertLookupWithKey">insertLookupWithKey</a> :: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; map -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map), map)</li><li><a href="#v:adjustMap">adjustMap</a> :: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; map</li><li><a href="#v:adjustWithKey">adjustWithKey</a> :: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; map</li><li><a href="#v:updateMap">updateMap</a> :: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map)) -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; map</li><li><a href="#v:updateWithKey">updateWithKey</a> :: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map)) -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; map</li><li><a href="#v:updateLookupWithKey">updateLookupWithKey</a> :: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map)) -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map), map)</li><li><a href="#v:alterMap">alterMap</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map)) -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; map</li><li><a href="#v:unionWith">unionWith</a> :: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; map -&gt; map -&gt; map</li><li><a href="#v:unionWithKey">unionWithKey</a> :: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; map -&gt; map -&gt; map</li><li><a href="#v:unionsWith">unionsWith</a> :: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; [map] -&gt; map</li><li><a href="#v:mapWithKey">mapWithKey</a> :: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; map -&gt; map</li><li><a href="#v:omapKeysWith">omapKeysWith</a> :: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map) -&gt; map -&gt; map</li></ul></li><li class="src short"><span class="keyword">class</span> (<a href="Data-Containers.html#t:SetContainer">SetContainer</a> set, <a href="Data-MonoTraversable.html#t:Element">Element</a> set ~ <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> set) =&gt; <a href="#t:IsSet">IsSet</a> set <span class="keyword">where</span><ul class="subs"><li><a href="#v:insertSet">insertSet</a> :: <a href="Data-MonoTraversable.html#t:Element">Element</a> set -&gt; set -&gt; set</li><li><a href="#v:deleteSet">deleteSet</a> :: <a href="Data-MonoTraversable.html#t:Element">Element</a> set -&gt; set -&gt; set</li><li><a href="#v:singletonSet">singletonSet</a> :: <a href="Data-MonoTraversable.html#t:Element">Element</a> set -&gt; set</li><li><a href="#v:setFromList">setFromList</a> :: [<a href="Data-MonoTraversable.html#t:Element">Element</a> set] -&gt; set</li><li><a href="#v:setToList">setToList</a> :: set -&gt; [<a href="Data-MonoTraversable.html#t:Element">Element</a> set]</li></ul></li><li class="src short"><span class="keyword">class</span> <a href="Data-MonoTraversable.html#t:MonoFunctor">MonoFunctor</a> mono =&gt; <a href="#t:MonoZip">MonoZip</a> mono <span class="keyword">where</span><ul class="subs"><li><a href="#v:ozipWith">ozipWith</a> :: (<a href="Data-MonoTraversable.html#t:Element">Element</a> mono -&gt; <a href="Data-MonoTraversable.html#t:Element">Element</a> mono -&gt; <a href="Data-MonoTraversable.html#t:Element">Element</a> mono) -&gt; mono -&gt; mono -&gt; mono</li><li><a href="#v:ozip">ozip</a> :: mono -&gt; mono -&gt; [(<a href="Data-MonoTraversable.html#t:Element">Element</a> mono, <a href="Data-MonoTraversable.html#t:Element">Element</a> mono)]</li><li><a href="#v:ounzip">ounzip</a> :: [(<a href="Data-MonoTraversable.html#t:Element">Element</a> mono, <a href="Data-MonoTraversable.html#t:Element">Element</a> mono)] -&gt; (mono, mono)</li></ul></li><li class="src short"><span class="keyword">class</span> <a href="Data-Containers.html#t:SetContainer">SetContainer</a> set =&gt; <a href="#t:HasKeysSet">HasKeysSet</a> set <span class="keyword">where</span><ul class="subs"><li><span class="keyword">type</span> <a href="#t:KeySet">KeySet</a> set</li><li><a href="#v:keysSet">keysSet</a> :: set -&gt; <a href="Data-Containers.html#t:KeySet">KeySet</a> set</li></ul></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">class</span> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Monoid.html#t:Monoid">Monoid</a> set, <a href="file:///usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Semigroup">Semigroup</a> set, <a href="Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> set, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> set), <a href="Data-MinLen.html#t:GrowingAppend">GrowingAppend</a> set) =&gt; <a name="t:SetContainer" class="def">SetContainer</a> set <span class="keyword">where</span> <a href="src/Data-Containers.html#SetContainer" class="link">Source</a></p><div class="doc"><p>A container whose values are stored in Key-Value pairs.</p></div><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a name="t:ContainerKey" class="def">ContainerKey</a> set <a href="src/Data-Containers.html#ContainerKey" class="link">Source</a></p><div class="doc"><p>The type of the key</p></div></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:member" class="def">member</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> set -&gt; set -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Data-Containers.html#member" class="link">Source</a></p><div class="doc"><p>Check if there is a value with the supplied key
 in the container.</p></div><p class="src"><a name="v:notMember" class="def">notMember</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> set -&gt; set -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Data-Containers.html#notMember" class="link">Source</a></p><div class="doc"><p>Check if there isn't a value with the supplied key
 in the container.</p></div><p class="src"><a name="v:union" class="def">union</a> :: set -&gt; set -&gt; set <a href="src/Data-Containers.html#union" class="link">Source</a></p><div class="doc"><p>Get the union of two containers.</p></div><p class="src"><a name="v:difference" class="def">difference</a> :: set -&gt; set -&gt; set <a href="src/Data-Containers.html#difference" class="link">Source</a></p><div class="doc"><p>Get the difference of two containers.</p></div><p class="src"><a name="v:intersection" class="def">intersection</a> :: set -&gt; set -&gt; set <a href="src/Data-Containers.html#intersection" class="link">Source</a></p><div class="doc"><p>Get the intersection of two containers.</p></div><p class="src"><a name="v:keys" class="def">keys</a> :: set -&gt; [<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> set] <a href="src/Data-Containers.html#keys" class="link">Source</a></p><div class="doc"><p>Get a list of all of the keys in the container.</p></div></div><div class="subs instances"><p id="control.i:SetContainer" class="caption collapser" onclick="toggleSection('i:SetContainer')">Instances</p><div id="section.i:SetContainer" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:SetContainer">SetContainer</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntSet.html#t:IntSet">IntSet</a></span> <a href="src/Data-Containers.html#line-147" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> key =&gt; <a href="Data-Containers.html#t:SetContainer">SetContainer</a> [(key, value)]</span> <a href="src/Data-Containers.html#line-162" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:SetContainer">SetContainer</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html#t:IntMap">IntMap</a> value)</span> <a href="src/Data-Containers.html#line-102" class="link">Source</a></td><td class="doc"><p>This instance uses the functions from <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html">Data.IntMap.Strict</a>.</p></td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> element =&gt; <a href="Data-Containers.html#t:SetContainer">SetContainer</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Set.html#t:Set">Set</a> element)</span> <a href="src/Data-Containers.html#line-117" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> element, <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> element) =&gt; <a href="Data-Containers.html#t:SetContainer">SetContainer</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> element)</span> <a href="src/Data-Containers.html#line-132" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> k =&gt; <a href="Data-Containers.html#t:SetContainer">SetContainer</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a> k v)</span> <a href="src/Data-Containers.html#line-66" class="link">Source</a></td><td class="doc"><p>This instance uses the functions from <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Strict.html">Data.Map.Strict</a>.</p></td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> key, <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> key) =&gt; <a href="Data-Containers.html#t:SetContainer">SetContainer</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> key value)</span> <a href="src/Data-Containers.html#line-84" class="link">Source</a></td><td class="doc"><p>This instance uses the functions from <a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html">Data.HashMap.Strict</a>.</p></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:PolyMap" class="def">PolyMap</a> map <span class="keyword">where</span> <a href="src/Data-Containers.html#PolyMap" class="link">Source</a></p><div class="doc"><p>A guaranteed-polymorphic <code>Map</code>, which allows for more polymorphic versions
 of functions.</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:differenceMap" class="def">differenceMap</a> :: map value1 -&gt; map value2 -&gt; map value1 <a href="src/Data-Containers.html#differenceMap" class="link">Source</a></p><div class="doc"><p>Get the difference between two maps, using the left map's values.</p></div><p class="src"><a name="v:intersectionMap" class="def">intersectionMap</a> :: map value1 -&gt; map value2 -&gt; map value1 <a href="src/Data-Containers.html#intersectionMap" class="link">Source</a></p><div class="doc"><p>Get the intersection of two maps, using the left map's values.</p></div><p class="src"><a name="v:intersectionWithMap" class="def">intersectionWithMap</a> :: (value1 -&gt; value2 -&gt; value3) -&gt; map value1 -&gt; map value2 -&gt; map value3 <a href="src/Data-Containers.html#intersectionWithMap" class="link">Source</a></p><div class="doc"><p>Get the intersection of two maps with a supplied function
 that takes in the left map's value and the right map's value.</p></div></div><div class="subs instances"><p id="control.i:PolyMap" class="caption collapser" onclick="toggleSection('i:PolyMap')">Instances</p><div id="section.i:PolyMap" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:PolyMap">PolyMap</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html#t:IntMap">IntMap</a></span> <a href="src/Data-Containers.html#line-228" class="link">Source</a></td><td class="doc"><p>This instance uses the functions from <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html">Data.IntMap.Strict</a>.</p></td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> key =&gt; <a href="Data-Containers.html#t:PolyMap">PolyMap</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a> key)</span> <a href="src/Data-Containers.html#line-204" class="link">Source</a></td><td class="doc"><p>This instance uses the functions from <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Strict.html">Data.Map.Strict</a>.</p></td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> key, <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> key) =&gt; <a href="Data-Containers.html#t:PolyMap">PolyMap</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> key)</span> <a href="src/Data-Containers.html#line-216" class="link">Source</a></td><td class="doc"><p>This instance uses the functions from <a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html">Data.HashMap.Strict</a>.</p></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:BiPolyMap" class="def">BiPolyMap</a> map <span class="keyword">where</span> <a href="src/Data-Containers.html#BiPolyMap" class="link">Source</a></p><div class="doc"><p>A <code>Map</code> type polymorphic in both its key and value.</p></div><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a name="t:BPMKeyConstraint" class="def">BPMKeyConstraint</a> map key :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/GHC-Exts.html#t:Constraint">Constraint</a> <a href="src/Data-Containers.html#BPMKeyConstraint" class="link">Source</a></p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:mapKeysWith" class="def">mapKeysWith</a> <a href="src/Data-Containers.html#mapKeysWith" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:BPMKeyConstraint">BPMKeyConstraint</a> map k1, <a href="Data-Containers.html#t:BPMKeyConstraint">BPMKeyConstraint</a> map k2)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">=&gt; (v -&gt; v -&gt; v)</td><td class="doc"><p>combine values that now overlap</p></td></tr><tr><td class="src">-&gt; (k1 -&gt; k2)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; map k1 v</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; map k2 v</td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="subs instances"><p id="control.i:BiPolyMap" class="caption collapser" onclick="toggleSection('i:BiPolyMap')">Instances</p><div id="section.i:BiPolyMap" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:BiPolyMap">BiPolyMap</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a></span> <a href="src/Data-Containers.html#line-245" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:BiPolyMap">BiPolyMap</a> <a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a></span> <a href="src/Data-Containers.html#line-249" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> (<a href="Data-MonoTraversable.html#t:MonoTraversable">MonoTraversable</a> map, <a href="Data-Containers.html#t:SetContainer">SetContainer</a> map) =&gt; <a name="t:IsMap" class="def">IsMap</a> map <span class="keyword">where</span> <a href="src/Data-Containers.html#IsMap" class="link">Source</a></p><div class="doc"><p>Polymorphic typeclass for interacting with different map types</p></div><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Data-Containers.html#v:lookup">lookup</a>, <a href="Data-Containers.html#v:insertMap">insertMap</a>, <a href="Data-Containers.html#v:deleteMap">deleteMap</a>, <a href="Data-Containers.html#v:singletonMap">singletonMap</a>, <a href="Data-Containers.html#v:mapFromList">mapFromList</a>, <a href="Data-Containers.html#v:mapToList">mapToList</a></p></div><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a name="t:MapValue" class="def">MapValue</a> map <a href="src/Data-Containers.html#MapValue" class="link">Source</a></p><div class="doc"><p>In some cases, <code><a href="Data-Containers.html#t:MapValue">MapValue</a></code> and <code><a href="Data-MonoTraversable.html#t:Element">Element</a></code> will be different, e.g., the
 <code><a href="Data-Containers.html#t:IsMap">IsMap</a></code> instance of associated lists.</p></div></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:lookup" class="def">lookup</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map) <a href="src/Data-Containers.html#lookup" class="link">Source</a></p><div class="doc"><p>Look up a value in a map with a specified key.</p></div><p class="src"><a name="v:insertMap" class="def">insertMap</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; map -&gt; map <a href="src/Data-Containers.html#insertMap" class="link">Source</a></p><div class="doc"><p>Insert a key-value pair into a map.</p></div><p class="src"><a name="v:deleteMap" class="def">deleteMap</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; map <a href="src/Data-Containers.html#deleteMap" class="link">Source</a></p><div class="doc"><p>Delete a key-value pair of a map using a specified key.</p></div><p class="src"><a name="v:singletonMap" class="def">singletonMap</a> :: <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; map <a href="src/Data-Containers.html#singletonMap" class="link">Source</a></p><div class="doc"><p>Create a map from a single key-value pair.</p></div><p class="src"><a name="v:mapFromList" class="def">mapFromList</a> :: [(<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map, <a href="Data-Containers.html#t:MapValue">MapValue</a> map)] -&gt; map <a href="src/Data-Containers.html#mapFromList" class="link">Source</a></p><div class="doc"><p>Convert a list of key-value pairs to a map</p></div><p class="src"><a name="v:mapToList" class="def">mapToList</a> :: map -&gt; [(<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map, <a href="Data-Containers.html#t:MapValue">MapValue</a> map)] <a href="src/Data-Containers.html#mapToList" class="link">Source</a></p><div class="doc"><p>Convert a map to a list of key-value pairs.</p></div><p class="src"><a name="v:findWithDefault" class="def">findWithDefault</a> :: <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map <a href="src/Data-Containers.html#findWithDefault" class="link">Source</a></p><div class="doc"><p>Like <code><a href="Data-Containers.html#v:lookup">lookup</a></code>, but uses a default value when the key does
 not exist in the map.</p></div><p class="src"><a name="v:insertWith" class="def">insertWith</a> <a href="src/Data-Containers.html#insertWith" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map)</td><td class="doc"><p>function that accepts the new value and the
 previous value and returns the value that will be
 set in the map.</p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map</td><td class="doc"><p>key</p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map</td><td class="doc"><p>new value to insert</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Insert a key-value pair into a map.</p><p>Inserts the value directly if the key does not exist in the map. Otherwise,
 apply a supplied function that accepts the new value and the previous value
 and insert that result into the map.</p></div><p class="src"><a name="v:insertWithKey" class="def">insertWithKey</a> <a href="src/Data-Containers.html#insertWithKey" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map)</td><td class="doc"><p>function that accepts the key, the new value, and the
 previous value and returns the value that will be
 set in the map.</p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map</td><td class="doc"><p>key</p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map</td><td class="doc"><p>new value to insert</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Insert a key-value pair into a map.</p><p>Inserts the value directly if the key does not exist in the map. Otherwise,
 apply a supplied function that accepts the key, the new value, and the
 previous value and insert that result into the map.</p></div><p class="src"><a name="v:insertLookupWithKey" class="def">insertLookupWithKey</a> <a href="src/Data-Containers.html#insertLookupWithKey" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map)</td><td class="doc"><p>function that accepts the key, the new value, and the
 previous value and returns the value that will be
 set in the map.</p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map</td><td class="doc"><p>key</p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map</td><td class="doc"><p>new value to insert</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map), map)</td><td class="doc"><p>previous value and the resulting map</p></td></tr></table></div><div class="doc"><p>Insert a key-value pair into a map, return the previous key's value
 if it existed.</p><p>Inserts the value directly if the key does not exist in the map. Otherwise,
 apply a supplied function that accepts the key, the new value, and the
 previous value and insert that result into the map.</p></div><p class="src"><a name="v:adjustMap" class="def">adjustMap</a> <a href="src/Data-Containers.html#adjustMap" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map)</td><td class="doc"><p>function to apply to the previous value</p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map</td><td class="doc"><p>key</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Apply a function to the value of a given key.</p><p>Returns the input map when the key-value pair does not exist.</p></div><p class="src"><a name="v:adjustWithKey" class="def">adjustWithKey</a> <a href="src/Data-Containers.html#adjustWithKey" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map)</td><td class="doc"><p>function that accepts the key and the previous value
 and returns the new value</p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map</td><td class="doc"><p>key</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Equivalent to <code><a href="Data-Containers.html#v:adjustMap">adjustMap</a></code>, but the function accepts the key,
 as well as the previous value.</p></div><p class="src"><a name="v:updateMap" class="def">updateMap</a> <a href="src/Data-Containers.html#updateMap" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map))</td><td class="doc"><p>function that accepts the previous value
 and returns the new value or <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code></p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map</td><td class="doc"><p>key</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Apply a function to the value of a given key.</p><p>If the function returns <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code>, this deletes the key-value pair.</p><p>Returns the input map when the key-value pair does not exist.</p></div><p class="src"><a name="v:updateWithKey" class="def">updateWithKey</a> <a href="src/Data-Containers.html#updateWithKey" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map))</td><td class="doc"><p>function that accepts the key and the previous value
 and returns the new value or <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code></p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map</td><td class="doc"><p>key</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Equivalent to <code><a href="Data-Containers.html#v:updateMap">updateMap</a></code>, but the function accepts the key,
 as well as the previous value.</p></div><p class="src"><a name="v:updateLookupWithKey" class="def">updateLookupWithKey</a> <a href="src/Data-Containers.html#updateLookupWithKey" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map))</td><td class="doc"><p>function that accepts the key and the previous value
 and returns the new value or <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code></p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map</td><td class="doc"><p>key</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map), map)</td><td class="doc"><p>previous/new value and the resulting map</p></td></tr></table></div><div class="doc"><p>Apply a function to the value of a given key.</p><p>If the map does not contain the key this returns <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code>
 and the input map.</p><p>If the map does contain the key but the function returns <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code>,
 this returns the previous value and the map with the key-value pair removed.</p><p>If the map contains the key and the function returns a value,
 this returns the new value and the map with the key-value pair with the new value.</p></div><p class="src"><a name="v:alterMap" class="def">alterMap</a> <a href="src/Data-Containers.html#alterMap" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Data-Containers.html#t:MapValue">MapValue</a> map))</td><td class="doc"><p>function that accepts the previous value and
 returns the new value or <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code></p></td></tr><tr><td class="src">-&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map</td><td class="doc"><p>key</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Update/Delete the value of a given key.</p><p>Applies a function to previous value of a given key, if it results in <code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Maybe.html#v:Nothing">Nothing</a></code>
 delete the key-value pair from the map, otherwise replace the previous value
 with the new value.</p></div><p class="src"><a name="v:unionWith" class="def">unionWith</a> <a href="src/Data-Containers.html#unionWith" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map)</td><td class="doc"><p>function that accepts the first map's value and the second map's value
 and returns the new value that will be used</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>first map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>second map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Combine two maps.</p><p>When a key exists in both maps, apply a function
 to both of the values and use the result of that as the value
 of the key in the resulting map.</p></div><p class="src"><a name="v:unionWithKey" class="def">unionWithKey</a> <a href="src/Data-Containers.html#unionWithKey" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map)</td><td class="doc"><p>function that accepts the key, the first map's value and the
 second map's value and returns the new value that will be used</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>first map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>second map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><p class="src"><a name="v:unionsWith" class="def">unionsWith</a> <a href="src/Data-Containers.html#unionsWith" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map)</td><td class="doc"><p>function that accepts the first map's value and the second map's value
 and returns the new value that will be used</p></td></tr><tr><td class="src">-&gt; [map]</td><td class="doc"><p>input list of maps</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Combine a list of maps.</p><p>When a key exists in two different maps, apply a function
 to both of the values and use the result of that as the value
 of the key in the resulting map.</p></div><p class="src"><a name="v:mapWithKey" class="def">mapWithKey</a> <a href="src/Data-Containers.html#mapWithKey" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map)</td><td class="doc"><p>function that accepts the key and the previous value
 and returns the new value</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Apply a function over every key-value pair of a map.</p></div><p class="src"><a name="v:omapKeysWith" class="def">omapKeysWith</a> <a href="src/Data-Containers.html#omapKeysWith" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map -&gt; <a href="Data-Containers.html#t:MapValue">MapValue</a> map)</td><td class="doc"><p>function that accepts the first map's value and the second map's value
 and returns the new value that will be used</p></td></tr><tr><td class="src">-&gt; (<a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map -&gt; <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> map)</td><td class="doc"><p>function that accepts the previous key and
 returns the new key</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>input map</p></td></tr><tr><td class="src">-&gt; map</td><td class="doc"><p>resulting map</p></td></tr></table></div><div class="doc"><p>Apply a function over every key of a pair and run
 <code><a href="Data-Containers.html#v:unionsWith">unionsWith</a></code> over the results.</p></div></div><div class="subs instances"><p id="control.i:IsMap" class="caption collapser" onclick="toggleSection('i:IsMap')">Instances</p><div id="section.i:IsMap" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> key =&gt; <a href="Data-Containers.html#t:IsMap">IsMap</a> [(key, value)]</span> <a href="src/Data-Containers.html#line-686" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:IsMap">IsMap</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html#t:IntMap">IntMap</a> value)</span> <a href="src/Data-Containers.html#line-639" class="link">Source</a></td><td class="doc"><p>This instance uses the functions from <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html">Data.IntMap.Strict</a>.</p></td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> key =&gt; <a href="Data-Containers.html#t:IsMap">IsMap</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a> key value)</span> <a href="src/Data-Containers.html#line-553" class="link">Source</a></td><td class="doc"><p>This instance uses the functions from <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Strict.html">Data.Map.Strict</a>.</p></td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> key, <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> key) =&gt; <a href="Data-Containers.html#t:IsMap">IsMap</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> key value)</span> <a href="src/Data-Containers.html#line-602" class="link">Source</a></td><td class="doc"><p>This instance uses the functions from <a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html">Data.HashMap.Strict</a>.</p></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> (<a href="Data-Containers.html#t:SetContainer">SetContainer</a> set, <a href="Data-MonoTraversable.html#t:Element">Element</a> set ~ <a href="Data-Containers.html#t:ContainerKey">ContainerKey</a> set) =&gt; <a name="t:IsSet" class="def">IsSet</a> set <span class="keyword">where</span> <a href="src/Data-Containers.html#IsSet" class="link">Source</a></p><div class="doc"><p>Polymorphic typeclass for interacting with different set types</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:insertSet" class="def">insertSet</a> :: <a href="Data-MonoTraversable.html#t:Element">Element</a> set -&gt; set -&gt; set <a href="src/Data-Containers.html#insertSet" class="link">Source</a></p><div class="doc"><p>Insert a value into a set.</p></div><p class="src"><a name="v:deleteSet" class="def">deleteSet</a> :: <a href="Data-MonoTraversable.html#t:Element">Element</a> set -&gt; set -&gt; set <a href="src/Data-Containers.html#deleteSet" class="link">Source</a></p><div class="doc"><p>Delete a value from a set.</p></div><p class="src"><a name="v:singletonSet" class="def">singletonSet</a> :: <a href="Data-MonoTraversable.html#t:Element">Element</a> set -&gt; set <a href="src/Data-Containers.html#singletonSet" class="link">Source</a></p><div class="doc"><p>Create a set from a single element.</p></div><p class="src"><a name="v:setFromList" class="def">setFromList</a> :: [<a href="Data-MonoTraversable.html#t:Element">Element</a> set] -&gt; set <a href="src/Data-Containers.html#setFromList" class="link">Source</a></p><div class="doc"><p>Convert a list to a set.</p></div><p class="src"><a name="v:setToList" class="def">setToList</a> :: set -&gt; [<a href="Data-MonoTraversable.html#t:Element">Element</a> set] <a href="src/Data-Containers.html#setToList" class="link">Source</a></p><div class="doc"><p>Convert a set to a list.</p></div></div><div class="subs instances"><p id="control.i:IsSet" class="caption collapser" onclick="toggleSection('i:IsSet')">Instances</p><div id="section.i:IsSet" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:IsSet">IsSet</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntSet.html#t:IntSet">IntSet</a></span> <a href="src/Data-Containers.html#line-742" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> element =&gt; <a href="Data-Containers.html#t:IsSet">IsSet</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Set.html#t:Set">Set</a> element)</span> <a href="src/Data-Containers.html#line-718" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> element, <a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> element) =&gt; <a href="Data-Containers.html#t:IsSet">IsSet</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> element)</span> <a href="src/Data-Containers.html#line-730" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a href="Data-MonoTraversable.html#t:MonoFunctor">MonoFunctor</a> mono =&gt; <a name="t:MonoZip" class="def">MonoZip</a> mono <span class="keyword">where</span> <a href="src/Data-Containers.html#MonoZip" class="link">Source</a></p><div class="doc"><p>Zip operations on <code><a href="Data-MonoTraversable.html#t:MonoFunctor">MonoFunctor</a></code>s.</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:ozipWith" class="def">ozipWith</a> :: (<a href="Data-MonoTraversable.html#t:Element">Element</a> mono -&gt; <a href="Data-MonoTraversable.html#t:Element">Element</a> mono -&gt; <a href="Data-MonoTraversable.html#t:Element">Element</a> mono) -&gt; mono -&gt; mono -&gt; mono <a href="src/Data-Containers.html#ozipWith" class="link">Source</a></p><div class="doc"><p>Combine each element of two <code><a href="Data-Containers.html#t:MonoZip">MonoZip</a></code>s using a supplied function.</p></div><p class="src"><a name="v:ozip" class="def">ozip</a> :: mono -&gt; mono -&gt; [(<a href="Data-MonoTraversable.html#t:Element">Element</a> mono, <a href="Data-MonoTraversable.html#t:Element">Element</a> mono)] <a href="src/Data-Containers.html#ozip" class="link">Source</a></p><div class="doc"><p>Take two <code><a href="Data-Containers.html#t:MonoZip">MonoZip</a></code>s and return a list of the pairs of their elements.</p></div><p class="src"><a name="v:ounzip" class="def">ounzip</a> :: [(<a href="Data-MonoTraversable.html#t:Element">Element</a> mono, <a href="Data-MonoTraversable.html#t:Element">Element</a> mono)] -&gt; (mono, mono) <a href="src/Data-Containers.html#ounzip" class="link">Source</a></p><div class="doc"><p>Take a list of pairs of elements and return a <code><a href="Data-Containers.html#t:MonoZip">MonoZip</a></code> of the first
 components and a <code><a href="Data-Containers.html#t:MonoZip">MonoZip</a></code> of the second components.</p></div></div><div class="subs instances"><p id="control.i:MonoZip" class="caption collapser" onclick="toggleSection('i:MonoZip')">Instances</p><div id="section.i:MonoZip" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:MonoZip">MonoZip</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.6.0/Data-ByteString.html#t:ByteString">ByteString</a></span> <a href="src/Data-Containers.html#line-768" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:MonoZip">MonoZip</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.6.0/Data-ByteString-Lazy.html#t:ByteString">ByteString</a></span> <a href="src/Data-Containers.html#line-775" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:MonoZip">MonoZip</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text-Lazy.html#t:Text">Text</a></span> <a href="src/Data-Containers.html#line-789" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:MonoZip">MonoZip</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></span> <a href="src/Data-Containers.html#line-782" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a href="Data-Containers.html#t:SetContainer">SetContainer</a> set =&gt; <a name="t:HasKeysSet" class="def">HasKeysSet</a> set <span class="keyword">where</span> <a href="src/Data-Containers.html#HasKeysSet" class="link">Source</a></p><div class="doc"><p>Type class for maps whose keys can be converted into sets.</p></div><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a name="t:KeySet" class="def">KeySet</a> set <a href="src/Data-Containers.html#KeySet" class="link">Source</a></p><div class="doc"><p>Type of the key set.</p></div></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:keysSet" class="def">keysSet</a> :: set -&gt; <a href="Data-Containers.html#t:KeySet">KeySet</a> set <a href="src/Data-Containers.html#keysSet" class="link">Source</a></p><div class="doc"><p>Convert a map into a set of its keys.</p></div></div><div class="subs instances"><p id="control.i:HasKeysSet" class="caption collapser" onclick="toggleSection('i:HasKeysSet')">Instances</p><div id="section.i:HasKeysSet" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><a href="Data-Containers.html#t:HasKeysSet">HasKeysSet</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-IntMap-Strict.html#t:IntMap">IntMap</a> v)</span> <a href="src/Data-Containers.html#line-808" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left"><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Ord.html#t:Ord">Ord</a> k =&gt; <a href="Data-Containers.html#t:HasKeysSet">HasKeysSet</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/containers-0.5.6.2/Data-Map-Lazy.html#t:Map">Map</a> k v)</span> <a href="src/Data-Containers.html#line-805" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src clearfix"><span class="inst-left">(<a href="file:///usr/share/doc/libghc-hashable-doc/html/Data-Hashable.html#t:Hashable">Hashable</a> k, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-Eq.html#t:Eq">Eq</a> k) =&gt; <a href="Data-Containers.html#t:HasKeysSet">HasKeysSet</a> (<a href="file:///usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k v)</span> <a href="src/Data-Containers.html#line-811" class="link">Source</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.1</p></div></body></html>