This file is indexed.

/usr/share/doc/libghc-monoid-extras-doc/html/Data-Monoid-Split.html is in libghc-monoid-extras-doc 0.3.2.4-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
<!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.Monoid.Split</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-Monoid-Split.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Data-Monoid-Split.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">monoid-extras-0.3.2.4: Various extra monoid-related definitions and utilities</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Maintainer</th><td>diagrams-discuss@googlegroups.com</td></tr><tr><th>Safe Haskell</th><td>Safe-Inferred</td></tr></table><p class="caption">Data.Monoid.Split</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Sometimes we want to accumulate values from some monoid, but have
 the ability to introduce a &quot;split&quot; which separates values on
 either side.  Only the rightmost split is kept.  For example,
</p><pre> a b c | d e | f g h == a b c d e | f g h
</pre><p>In the diagrams graphics framework this is used when accumulating
 transformations to be applied to primitive diagrams: the <code>freeze</code>
 operation introduces a split, since only transformations occurring
 outside the freeze should be applied to attributes.
</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:Split">Split</a> m<ul class="subs"><li>= <a href="#v:M">M</a> m  </li><li>| m <a href="#v::-124-">:|</a> m  </li></ul></li><li class="src short"><a href="#v:split">split</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> m =&gt; <a href="Data-Monoid-Split.html#t:Split">Split</a> m</li><li class="src short"><a href="#v:unsplit">unsplit</a> :: <a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Semigroup">Semigroup</a> m =&gt; <a href="Data-Monoid-Split.html#t:Split">Split</a> m -&gt; m</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:Split" class="def">Split</a> m <a href="src/Data-Monoid-Split.html#Split" class="link">Source</a></p><div class="doc"><p>A value of type <code>Split m</code> is either a single <code>m</code>, or a pair of
   <code>m</code>'s separated by a divider.  Single <code>m</code>'s combine as usual;
   single <code>m</code>'s combine with split values by combining with the
   value on the appropriate side; when two split values meet only
   the rightmost split is kept, with both the values from the left
   split combining with the left-hand value of the right split.
</p><p><a href="Data-Monoid-Cut.html">Data.Monoid.Cut</a> is similar, but uses a different scheme for
   composition.  <code>Split</code> uses the asymmetric constructor <code>:|</code>, and
   <code>Cut</code> the symmetric constructor <code>:||:</code>, to emphasize the inherent
   asymmetry of <code>Split</code> and symmetry of <code>Cut</code>.  <code>Split</code> keeps only
   the rightmost split and combines everything on the left; <code>Cut</code>
   keeps the outermost splits and throws away everything in between.
</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:M" class="def">M</a> m</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">m <a name="v::-124-" class="def">:|</a> m</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:Split" class="caption collapser" onclick="toggleSection('i:Split')">Instances</p><div id="section.i:Split" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Show.html#t:Show">Show</a> m =&gt; <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Show.html#t:Show">Show</a> (<a href="Data-Monoid-Split.html#t:Split">Split</a> m)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">(<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Semigroup">Semigroup</a> m, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> m) =&gt; <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> (<a href="Data-Monoid-Split.html#t:Split">Split</a> m)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Semigroup">Semigroup</a> m =&gt; <a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Semigroup">Semigroup</a> (<a href="Data-Monoid-Split.html#t:Split">Split</a> m)</td><td class="doc"><p>If <code>m</code> is a <code>Semigroup</code>, then <code>Split m</code> is a semigroup which
   combines values on either side of a split, keeping only the
   rightmost split.
</p></td></tr><tr><td class="src"><a href="Data-Monoid-Action.html#t:Action">Action</a> m n =&gt; <a href="Data-Monoid-Action.html#t:Action">Action</a> (<a href="Data-Monoid-Split.html#t:Split">Split</a> m) n</td><td class="doc"><p>By default, the action of a split monoid is the same as for
   the underlying monoid, as if the split were removed.
</p></td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:split" class="def">split</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> m =&gt; <a href="Data-Monoid-Split.html#t:Split">Split</a> m<a href="src/Data-Monoid-Split.html#split" class="link">Source</a></p><div class="doc"><p>A convenient name for <code>mempty :| mempty</code>, so <code>M a &lt;&gt; split &lt;&gt;
   M b == a :| b</code>.
</p></div></div><div class="top"><p class="src"><a name="v:unsplit" class="def">unsplit</a> :: <a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Semigroup">Semigroup</a> m =&gt; <a href="Data-Monoid-Split.html#t:Split">Split</a> m -&gt; m<a href="src/Data-Monoid-Split.html#unsplit" class="link">Source</a></p><div class="doc"><p>&quot;Unsplit&quot; a split monoid value, combining the two values into
   one (or returning the single value if there is no split).
</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>