/usr/share/doc/libghc-expiring-cache-map-doc/html/Caching-ExpiringCacheMap-Types.html is in libghc-expiring-cache-map-doc 0.0.6.1-3build3.
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 | <!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>Caching.ExpiringCacheMap.Types</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script src="file:///usr/share/javascript/mathjax/MathJax.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Caching-ExpiringCacheMap-Types.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Caching-ExpiringCacheMap-Types.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">expiring-cache-map-0.0.6.1: General purpose simple caching.</p></div><div id="content"><div id="module-header"><table class="info"><tr><th valign="top">Copyright</th><td>(c) 2014 Edward L. Blake</td></tr><tr><th>License</th><td>BSD-style
</td></tr><tr><th>Maintainer</th><td>Edward L. Blake <edwardlblake@gmail.com>
</td></tr><tr><th>Stability</th><td>experimental
</td></tr><tr><th>Portability</th><td>portable
</td></tr><tr><th>Safe Haskell</th><td>Safe</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Caching.ExpiringCacheMap.Types</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">Configuration</a></li><li><a href="#g:2">Cache encapsulation</a></li><li><a href="#g:3">Types</a></li><li><a href="#g:4">Types for state function</a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Types common to <a href="Caching-ExpiringCacheMap-OrdECM.html">Caching.ExpiringCacheMap.OrdECM</a> and <a href="Caching-ExpiringCacheMap-HashECM.html">Caching.ExpiringCacheMap.HashECM</a>.</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">data</span> <a href="#t:CacheSettings">CacheSettings</a> = <a href="#v:CacheWithLRUList">CacheWithLRUList</a> {<ul class="subs"><li><a href="#v:mapsize">mapsize</a> :: <a href="Caching-ExpiringCacheMap-Types.html#t:ECMMapSize">ECMMapSize</a></li><li><a href="#v:removalsize">removalsize</a> :: <a href="Caching-ExpiringCacheMap-Types.html#t:ECMMapSize">ECMMapSize</a></li><li><a href="#v:compactlistsize">compactlistsize</a> :: <a href="Caching-ExpiringCacheMap-Types.html#t:ECMULength">ECMULength</a></li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:ECM">ECM</a> a b s m k v</li><li class="src short"><span class="keyword">data</span> <a href="#t:CacheState">CacheState</a> s m k v</li><li class="src short"><span class="keyword">type</span> <a href="#t:TimeUnits">TimeUnits</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:ECMMapSize">ECMMapSize</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:ECMULength">ECMULength</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:ECMIncr">ECMIncr</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Word.html#t:Word32">Word32</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:ECMNewState">ECMNewState</a> a b s m k v = <a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v -> a (b (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v))</li><li class="src short"><span class="keyword">type</span> <a href="#t:ECMEnterState">ECMEnterState</a> a b s m k v = b (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v) -> (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v -> a (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v, v)) -> a v</li><li class="src short"><span class="keyword">type</span> <a href="#t:ECMReadState">ECMReadState</a> a b s m k v = b (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v) -> a (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v)</li></ul></div><div id="interface"><h1 id="g:1">Configuration</h1><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:CacheSettings" class="def">CacheSettings</a> <a href="src/Caching-ExpiringCacheMap-Types.html#CacheSettings" class="link">Source</a> <a href="#t:CacheSettings" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:CacheWithLRUList" class="def">CacheWithLRUList</a></td><td class="doc"><p>A cache that maintains a key access history list to perform removals
of <em>least recently used</em> entries. Once the key-value map reaches
<code><a href="Caching-ExpiringCacheMap-Types.html#v:removalsize">removalsize</a></code> keys, then a list of keys to keep in the map is determined
which is no larger than <code><a href="Caching-ExpiringCacheMap-Types.html#v:mapsize">mapsize</a></code> size. Entries are removed only on
insertion of a new entry in the key-value map.</p><p>Key access history entries are prepended to the head of the LRU list,
if an existing entry for the key appears close to the head of the list
it is moved to the head of the list, instead of growing the list. When the
LRU list reaches <code><a href="Caching-ExpiringCacheMap-Types.html#v:compactlistsize">compactlistsize</a></code> items, it is compacted by removing
duplicate keys, by keeping only the most recent accumulator value for
that key.</p></td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:mapsize" class="def">mapsize</a> :: <a href="Caching-ExpiringCacheMap-Types.html#t:ECMMapSize">ECMMapSize</a></dfn><div class="doc empty"> </div></li><li><dfn class="src"><a id="v:removalsize" class="def">removalsize</a> :: <a href="Caching-ExpiringCacheMap-Types.html#t:ECMMapSize">ECMMapSize</a></dfn><div class="doc empty"> </div></li><li><dfn class="src"><a id="v:compactlistsize" class="def">compactlistsize</a> :: <a href="Caching-ExpiringCacheMap-Types.html#t:ECMULength">ECMULength</a></dfn><div class="doc empty"> </div></li></ul></div></td></tr></table></div></div><h1 id="g:2">Cache encapsulation</h1><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:ECM" class="def">ECM</a> a b s m k v <a href="src/Caching-ExpiringCacheMap-Internal-Types.html#ECM" class="link">Source</a> <a href="#t:ECM" class="selflink">#</a></p><div class="doc"><p>The type that encapsulates a cache map.</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:CacheState" class="def">CacheState</a> s m k v <a href="src/Caching-ExpiringCacheMap-Internal-Types.html#CacheState" class="link">Source</a> <a href="#t:CacheState" class="selflink">#</a></p><div class="doc"><p>The cache state.</p></div></div><h1 id="g:3">Types</h1><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:TimeUnits" class="def">TimeUnits</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="src/Caching-ExpiringCacheMap-Utils-Types.html#TimeUnits" class="link">Source</a> <a href="#t:TimeUnits" class="selflink">#</a></p><div class="doc"><p>Integer involved in the time units used to determine when an item expires.
The time units used can be any arbitrary integer time representation, such
as seconds or milliseconds for examples. They can also be deterministic time
steps in a sequencing monad.</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ECMMapSize" class="def">ECMMapSize</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="src/Caching-ExpiringCacheMap-Utils-Types.html#ECMMapSize" class="link">Source</a> <a href="#t:ECMMapSize" class="selflink">#</a></p><div class="doc"><p>Integer involved in the size of a key-value map.</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ECMULength" class="def">ECMULength</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="src/Caching-ExpiringCacheMap-Utils-Types.html#ECMULength" class="link">Source</a> <a href="#t:ECMULength" class="selflink">#</a></p><div class="doc"><p>Integer involved in the length of the usage history list.</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ECMIncr" class="def">ECMIncr</a> = <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Word.html#t:Word32">Word32</a> <a href="src/Caching-ExpiringCacheMap-Utils-Types.html#ECMIncr" class="link">Source</a> <a href="#t:ECMIncr" class="selflink">#</a></p><div class="doc"><p>Unsigned integer (<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Word.html#t:Word32">Word32</a></code>) involved in the cache state incrementing accumulator.</p></div></div><h1 id="g:4">Types for state function</h1><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ECMNewState" class="def">ECMNewState</a> a b s m k v = <a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v -> a (b (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v)) <a href="src/Caching-ExpiringCacheMap-Internal-Types.html#ECMNewState" class="link">Source</a> <a href="#t:ECMNewState" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ECMEnterState" class="def">ECMEnterState</a> a b s m k v = b (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v) -> (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v -> a (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v, v)) -> a v <a href="src/Caching-ExpiringCacheMap-Internal-Types.html#ECMEnterState" class="link">Source</a> <a href="#t:ECMEnterState" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ECMReadState" class="def">ECMReadState</a> a b s m k v = b (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v) -> a (<a href="Caching-ExpiringCacheMap-Types.html#t:CacheState">CacheState</a> s m k v) <a href="src/Caching-ExpiringCacheMap-Internal-Types.html#ECMReadState" class="link">Source</a> <a href="#t:ECMReadState" class="selflink">#</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.3</p></div></body></html>
|