This file is indexed.

/usr/share/doc/libghc-regex-tdfa-doc/html/Text-Regex-TDFA-TNFA.html is in libghc-regex-tdfa-doc 1.1.8-4build1.

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
<!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>Text.Regex.TDFA.TNFA</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_Text-Regex-TDFA-TNFA.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Text-Regex-TDFA-TNFA.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">regex-tdfa-1.1.8: Replaces/Enhances Text.Regex</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Text.Regex.TDFA.TNFA</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p><a href="Text-Regex-TDFA-TNFA.html">Text.Regex.TDFA.TNFA</a> converts the CorePattern Q/P data (and its
 Pattern leafs) to a QNFA tagged non-deterministic finite automata.
</p><p>This holds every possible way to follow one state by another, while
 in the DFA these will be reduced by picking a single best
 transition for each (soure,destination) pair.  The transitions are
 heavily and often redundantly annotated with tasks to perform, and
 this redundancy is reduced when picking the best transition.  So
 far, keeping all this information has helped fix bugs in both the
 design and implementation.
</p><p>The QNFA for a Pattern with a starTraned Q/P form with N one
 character accepting leaves has at most N+1 nodes.  These nodes
 repesent the future choices after accepting a leaf.  The processing
 of Or nodes often reduces this number by sharing at the end of the
 different paths.  Turning off capturing while compiling the pattern
 may (future extension) reduce this further for some patterns by
 processing Star with optimizations.  This compact design also means
 that tags are assigned not just to be updated before taking a
 transition (PreUpdate) but also after the transition (PostUpdate).
</p><p>Uses recursive do notation.
</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"><a href="#v:patternToNFA">patternToNFA</a> :: <a href="Text-Regex-TDFA-Common.html#t:CompOption">CompOption</a> -&gt; (<a href="Text-Regex-TDFA-Pattern.html#t:Pattern">Pattern</a>, (<a href="Text-Regex-TDFA-Common.html#t:GroupIndex">GroupIndex</a>, <a href="Text-Regex-TDFA-Common.html#t:DoPa">DoPa</a>)) -&gt; ((<a href="Text-Regex-TDFA-Common.html#t:Index">Index</a>, <a href="/usr/share/doc/ghc-doc/html/libraries/array-0.4.0.1/Data-Array.html#t:Array">Array</a> <a href="Text-Regex-TDFA-Common.html#t:Index">Index</a> <a href="Text-Regex-TDFA-TNFA.html#t:QNFA">QNFA</a>), <a href="/usr/share/doc/ghc-doc/html/libraries/array-0.4.0.1/Data-Array.html#t:Array">Array</a> <a href="Text-Regex-TDFA-Common.html#t:Tag">Tag</a> <a href="Text-Regex-TDFA-Common.html#t:OP">OP</a>, <a href="/usr/share/doc/ghc-doc/html/libraries/array-0.4.0.1/Data-Array.html#t:Array">Array</a> <a href="Text-Regex-TDFA-Common.html#t:GroupIndex">GroupIndex</a> [<a href="Text-Regex-TDFA-Common.html#t:GroupInfo">GroupInfo</a>])</li><li class="src short"><span class="keyword">data</span>  <a href="#t:QNFA">QNFA</a>  = <a href="#v:QNFA">QNFA</a> {<ul class="subs"><li><a href="#v:q_id">q_id</a> :: <a href="Text-Regex-TDFA-Common.html#t:Index">Index</a></li><li><a href="#v:q_qt">q_qt</a> :: <a href="Text-Regex-TDFA-TNFA.html#t:QT">QT</a></li></ul>}</li><li class="src short"><span class="keyword">data</span>  <a href="#t:QT">QT</a> <ul class="subs"><li>= <a href="#v:Simple">Simple</a> { <ul class="subs"><li><a href="#v:qt_win">qt_win</a> :: <a href="Text-Regex-TDFA-Common.html#t:WinTags">WinTags</a></li><li><a href="#v:qt_trans">qt_trans</a> :: <a href="Data-IntMap-CharMap2.html#t:CharMap">CharMap</a> <a href="Text-Regex-TDFA-TNFA.html#t:QTrans">QTrans</a></li><li><a href="#v:qt_other">qt_other</a> :: <a href="Text-Regex-TDFA-TNFA.html#t:QTrans">QTrans</a></li></ul> }</li><li>| <a href="#v:Testing">Testing</a> { <ul class="subs"><li><a href="#v:qt_test">qt_test</a> :: <a href="Text-Regex-TDFA-Common.html#t:WhichTest">WhichTest</a></li><li><a href="#v:qt_dopas">qt_dopas</a> :: <a href="Data-IntSet-EnumSet2.html#t:EnumSet">EnumSet</a> <a href="Text-Regex-TDFA-Common.html#t:DoPa">DoPa</a></li><li><a href="#v:qt_a">qt_a</a> :: <a href="Text-Regex-TDFA-TNFA.html#t:QT">QT</a></li><li><a href="#v:qt_b">qt_b</a> :: <a href="Text-Regex-TDFA-TNFA.html#t:QT">QT</a></li></ul> }</li></ul></li><li class="src short"><span class="keyword">type</span> <a href="#t:QTrans">QTrans</a> = <a href="/usr/share/doc/ghc-doc/html/libraries/containers-0.5.0.0/Data-IntMap-Strict.html#t:IntMap">IntMap</a> [<a href="Text-Regex-TDFA-Common.html#t:TagCommand">TagCommand</a>]</li><li class="src short"><span class="keyword">data</span>  <a href="#t:TagUpdate">TagUpdate</a> <ul class="subs"><li>= <a href="#v:PreUpdate">PreUpdate</a> <a href="Text-Regex-TDFA-Common.html#t:TagTask">TagTask</a>  </li><li>| <a href="#v:PostUpdate">PostUpdate</a> <a href="Text-Regex-TDFA-Common.html#t:TagTask">TagTask</a>  </li></ul></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:patternToNFA" class="def">patternToNFA</a> :: <a href="Text-Regex-TDFA-Common.html#t:CompOption">CompOption</a> -&gt; (<a href="Text-Regex-TDFA-Pattern.html#t:Pattern">Pattern</a>, (<a href="Text-Regex-TDFA-Common.html#t:GroupIndex">GroupIndex</a>, <a href="Text-Regex-TDFA-Common.html#t:DoPa">DoPa</a>)) -&gt; ((<a href="Text-Regex-TDFA-Common.html#t:Index">Index</a>, <a href="/usr/share/doc/ghc-doc/html/libraries/array-0.4.0.1/Data-Array.html#t:Array">Array</a> <a href="Text-Regex-TDFA-Common.html#t:Index">Index</a> <a href="Text-Regex-TDFA-TNFA.html#t:QNFA">QNFA</a>), <a href="/usr/share/doc/ghc-doc/html/libraries/array-0.4.0.1/Data-Array.html#t:Array">Array</a> <a href="Text-Regex-TDFA-Common.html#t:Tag">Tag</a> <a href="Text-Regex-TDFA-Common.html#t:OP">OP</a>, <a href="/usr/share/doc/ghc-doc/html/libraries/array-0.4.0.1/Data-Array.html#t:Array">Array</a> <a href="Text-Regex-TDFA-Common.html#t:GroupIndex">GroupIndex</a> [<a href="Text-Regex-TDFA-Common.html#t:GroupInfo">GroupInfo</a>])<a href="src/Text-Regex-TDFA-TNFA.html#patternToNFA" class="link">Source</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:QNFA" class="def">QNFA</a>  <a href="src/Text-Regex-TDFA-Common.html#QNFA" class="link">Source</a></p><div class="doc"><p>Internal NFA node type
</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:QNFA" class="def">QNFA</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:q_id" class="def">q_id</a> :: <a href="Text-Regex-TDFA-Common.html#t:Index">Index</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:q_qt" class="def">q_qt</a> :: <a href="Text-Regex-TDFA-TNFA.html#t:QT">QT</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:QNFA" class="caption collapser" onclick="toggleSection('i:QNFA')">Instances</p><div id="section.i:QNFA" 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> <a href="Text-Regex-TDFA-TNFA.html#t:QNFA">QNFA</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:QT" class="def">QT</a>  <a href="src/Text-Regex-TDFA-Common.html#QT" class="link">Source</a></p><div class="doc"><p>Internal to QNFA type.
</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:Simple" class="def">Simple</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:qt_win" class="def">qt_win</a> :: <a href="Text-Regex-TDFA-Common.html#t:WinTags">WinTags</a></dt><dd class="doc"><p>empty transitions to the virtual winning state
</p></dd><dt class="src"><a name="v:qt_trans" class="def">qt_trans</a> :: <a href="Data-IntMap-CharMap2.html#t:CharMap">CharMap</a> <a href="Text-Regex-TDFA-TNFA.html#t:QTrans">QTrans</a></dt><dd class="doc"><p>all ways to leave this QNFA to other or the same QNFA
</p></dd><dt class="src"><a name="v:qt_other" class="def">qt_other</a> :: <a href="Text-Regex-TDFA-TNFA.html#t:QTrans">QTrans</a></dt><dd class="doc"><p>default ways to leave this QNFA to other or the same QNFA
</p></dd></dl><div class="clear"></div></div></td></tr><tr><td class="src"><a name="v:Testing" class="def">Testing</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:qt_test" class="def">qt_test</a> :: <a href="Text-Regex-TDFA-Common.html#t:WhichTest">WhichTest</a></dt><dd class="doc"><p>The test to perform
</p></dd><dt class="src"><a name="v:qt_dopas" class="def">qt_dopas</a> :: <a href="Data-IntSet-EnumSet2.html#t:EnumSet">EnumSet</a> <a href="Text-Regex-TDFA-Common.html#t:DoPa">DoPa</a></dt><dd class="doc"><p>location(s) of the anchor(s) in the original regexp
</p></dd><dt class="src"><a name="v:qt_a" class="def">qt_a</a> :: <a href="Text-Regex-TDFA-TNFA.html#t:QT">QT</a></dt><dd class="doc"><p>use qt_a if test is True, else use qt_b
</p></dd><dt class="src"><a name="v:qt_b" class="def">qt_b</a> :: <a href="Text-Regex-TDFA-TNFA.html#t:QT">QT</a></dt><dd class="doc"><p>use qt_a if test is True, else use qt_b
</p></dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:QT" class="caption collapser" onclick="toggleSection('i:QT')">Instances</p><div id="section.i:QT" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#t:Eq">Eq</a> <a href="Text-Regex-TDFA-TNFA.html#t:QT">QT</a></td><td class="doc empty">&nbsp;</td></tr><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> <a href="Text-Regex-TDFA-TNFA.html#t:QT">QT</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:QTrans" class="def">QTrans</a> = <a href="/usr/share/doc/ghc-doc/html/libraries/containers-0.5.0.0/Data-IntMap-Strict.html#t:IntMap">IntMap</a> [<a href="Text-Regex-TDFA-Common.html#t:TagCommand">TagCommand</a>]<a href="src/Text-Regex-TDFA-Common.html#QTrans" class="link">Source</a></p><div class="doc"><p>Internal type to represent the tagged transition from one QNFA to
 another (or itself).  The key is the Index of the destination QNFA.
</p></div></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:TagUpdate" class="def">TagUpdate</a>  <a href="src/Text-Regex-TDFA-Common.html#TagUpdate" class="link">Source</a></p><div class="doc"><p>When attached to a QTrans the TagTask can be done before or after
 accepting the character.
</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:PreUpdate" class="def">PreUpdate</a> <a href="Text-Regex-TDFA-Common.html#t:TagTask">TagTask</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:PostUpdate" class="def">PostUpdate</a> <a href="Text-Regex-TDFA-Common.html#t:TagTask">TagTask</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:TagUpdate" class="caption collapser" onclick="toggleSection('i:TagUpdate')">Instances</p><div id="section.i:TagUpdate" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#t:Eq">Eq</a> <a href="Text-Regex-TDFA-TNFA.html#t:TagUpdate">TagUpdate</a></td><td class="doc empty">&nbsp;</td></tr><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> <a href="Text-Regex-TDFA-TNFA.html#t:TagUpdate">TagUpdate</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.13.2</p></div></body></html>