<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!--Rendered using the Haskell Html Library v0.2--> <HTML ><HEAD ><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8" ><TITLE >FiniteMap</TITLE ><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css" ><SCRIPT SRC="haddock-util.js" TYPE="text/javascript" ></SCRIPT ><SCRIPT TYPE="text/javascript" >window.onload = function () {setSynopsis("mini_FiniteMap.html")};</SCRIPT ></HEAD ><BODY ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="topbar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title" >ghc-6.12.3: The GHC API</TD ><TD CLASS="topbut" ><A HREF="src/FiniteMap.html" >Source code</A ></TD ><TD CLASS="topbut" ><A HREF="index.html" >Contents</A ></TD ><TD CLASS="topbut" ><A HREF="doc-index.html" >Index</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="modulebar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><FONT SIZE="6" >FiniteMap</FONT ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" ><B >Contents</B ></TD ></TR ><TR ><TD ><DL ><DT ><A HREF="#1" >Mappings keyed from arbitrary types </A ></DT ><DD ><DL ><DT ><A HREF="#2" >Manipulating those mappings </A ></DT ></DL ></DD ></DL ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Synopsis</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AemptyFM" >emptyFM</A > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AunitFM" >unitFM</A > :: key -> elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AlistToFM" >listToFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => [(key, elt)] -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AaddToFM" >addToFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> key -> elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AaddToFM_C" >addToFM_C</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => (elt -> elt -> elt) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> key -> elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AaddListToFM" >addListToFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [(key, elt)] -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AaddListToFM_C" >addListToFM_C</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => (elt -> elt -> elt) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [(key, elt)] -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AdelFromFM" >delFromFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> key -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AdelListFromFM" >delListFromFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [key] -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AplusFM" >plusFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AplusFM_C" >plusFM_C</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => (elt -> elt -> elt) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AminusFM" >minusFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfoldFM" >foldFM</A > :: (key -> elt -> a -> a) -> a -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AintersectFM" >intersectFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AintersectFM_C" >intersectFM_C</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => (elt1 -> elt2 -> elt3) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt1 -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt2 -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt3</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmapFM" >mapFM</A > :: (key -> elt1 -> elt2) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt1 -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt2</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfilterFM" >filterFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => (key -> elt -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A >) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AsizeFM" >sizeFM</A > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AisEmptyFM" >isEmptyFM</A > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AelemFM" >elemFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => key -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AlookupFM" >lookupFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> key -> <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AlookupWithDefaultFM" >lookupWithDefaultFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> elt -> key -> elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfmToList" >fmToList</A > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [(key, elt)]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AkeysFM" >keysFM</A > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [key]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AeltsFM" >eltsFM</A > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [elt]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AbagToFM" >bagToFM</A > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="Bag.html#t%3ABag" >Bag</A > (key, elt) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="1" ><A NAME="1" >Mappings keyed from arbitrary types </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:FiniteMap" ><A NAME="t%3AFiniteMap" ></A ></A ><B >FiniteMap</B > key elt </TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#FiniteMap" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A finite mapping from (orderable) key types to elements </TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:FiniteMap')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:FiniteMap" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" >(<A HREF="Outputable.html#t%3AOutputable" >Outputable</A > key, <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > elt) => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="2" ><A NAME="2" >Manipulating those mappings </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:emptyFM" ><A NAME="v%3AemptyFM" ></A ></A ><B >emptyFM</B > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#emptyFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:unitFM" ><A NAME="v%3AunitFM" ></A ></A ><B >unitFM</B > :: key -> elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#unitFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:listToFM" ><A NAME="v%3AlistToFM" ></A ></A ><B >listToFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => [(key, elt)] -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#listToFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >In the case of duplicates keys, the last item is taken </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:addToFM" ><A NAME="v%3AaddToFM" ></A ></A ><B >addToFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> key -> elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#addToFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Throws away any previous binding </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:addToFM_C" ><A NAME="v%3AaddToFM_C" ></A ></A ><B >addToFM_C</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => (elt -> elt -> elt) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> key -> elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#addToFM_C" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Combines added item with previous item, if any </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:addListToFM" ><A NAME="v%3AaddListToFM" ></A ></A ><B >addListToFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [(key, elt)] -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#addListToFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Throws away any previous binding, items are added left-to-right </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:addListToFM_C" ><A NAME="v%3AaddListToFM_C" ></A ></A ><B >addListToFM_C</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => (elt -> elt -> elt) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [(key, elt)] -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#addListToFM_C" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Combines added item with previous item, if any, items are added left-to-right </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:delFromFM" ><A NAME="v%3AdelFromFM" ></A ></A ><B >delFromFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> key -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#delFromFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Deletion doesn't complain if you try to delete something which isn't there </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:delListFromFM" ><A NAME="v%3AdelListFromFM" ></A ></A ><B >delListFromFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [key] -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#delListFromFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Deletion doesn't complain if you try to delete something which isn't there </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:plusFM" ><A NAME="v%3AplusFM" ></A ></A ><B >plusFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#plusFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Bindings in right argument shadow those in the left </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:plusFM_C" ><A NAME="v%3AplusFM_C" ></A ></A ><B >plusFM_C</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => (elt -> elt -> elt) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#plusFM_C" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Combines bindings for the same thing with the given function, bindings in right argument shadow those in the left </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:minusFM" ><A NAME="v%3AminusFM" ></A ></A ><B >minusFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#minusFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Deletes from the left argument any bindings in the right argument </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:foldFM" ><A NAME="v%3AfoldFM" ></A ></A ><B >foldFM</B > :: (key -> elt -> a -> a) -> a -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> a</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#foldFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:intersectFM" ><A NAME="v%3AintersectFM" ></A ></A ><B >intersectFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#intersectFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:intersectFM_C" ><A NAME="v%3AintersectFM_C" ></A ></A ><B >intersectFM_C</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => (elt1 -> elt2 -> elt3) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt1 -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt2 -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt3</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#intersectFM_C" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Combines bindings for the same thing in the two maps with the given function </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:mapFM" ><A NAME="v%3AmapFM" ></A ></A ><B >mapFM</B > :: (key -> elt1 -> elt2) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt1 -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt2</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#mapFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:filterFM" ><A NAME="v%3AfilterFM" ></A ></A ><B >filterFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => (key -> elt -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A >) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#filterFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:sizeFM" ><A NAME="v%3AsizeFM" ></A ></A ><B >sizeFM</B > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#sizeFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:isEmptyFM" ><A NAME="v%3AisEmptyFM" ></A ></A ><B >isEmptyFM</B > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#isEmptyFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:elemFM" ><A NAME="v%3AelemFM" ></A ></A ><B >elemFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => key -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#elemFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:lookupFM" ><A NAME="v%3AlookupFM" ></A ></A ><B >lookupFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> key -> <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#lookupFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:lookupWithDefaultFM" ><A NAME="v%3AlookupWithDefaultFM" ></A ></A ><B >lookupWithDefaultFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> elt -> key -> elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#lookupWithDefaultFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Supplies a <A HREF="default.html" >default</A > element in return for an unmapped key </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:fmToList" ><A NAME="v%3AfmToList" ></A ></A ><B >fmToList</B > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [(key, elt)]</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#fmToList" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:keysFM" ><A NAME="v%3AkeysFM" ></A ></A ><B >keysFM</B > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [key]</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#keysFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:eltsFM" ><A NAME="v%3AeltsFM" ></A ></A ><B >eltsFM</B > :: <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt -> [elt]</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#eltsFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:bagToFM" ><A NAME="v%3AbagToFM" ></A ></A ><B >bagToFM</B > :: <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > key => <A HREF="Bag.html#t%3ABag" >Bag</A > (key, elt) -> <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > key elt</TD ><TD CLASS="declbut" ><A HREF="src/FiniteMap.html#bagToFM" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >In the case of duplicate keys, who knows which item is taken </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="botbar" >Produced by <A HREF="http://www.haskell.org/haddock/" >Haddock</A > version 2.6.1</TD ></TR ></TABLE ></BODY ></HTML >