/usr/share/doc/haskell-haskelldb-doc/html/Database-HaskellDB-HDBRec.html is in libghc-haskelldb-doc 2.1.1-2.
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>Database.HaskellDB.HDBRec</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_Database-HaskellDB-HDBRec.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Database-HaskellDB-HDBRec.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">haskelldb-2.1.1: A library of combinators for generating and executing SQL statements.</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Portability</th><td>non-portable</td></tr><tr><th>Stability</th><td>experimental</td></tr><tr><th>Maintainer</th><td>haskelldb-users@lists.sourceforge.net</td></tr><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Database.HaskellDB.HDBRec</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">Record types
</a></li><li><a href="#g:2">Record construction
</a></li><li><a href="#g:3">Labels
</a></li><li><a href="#g:4">Record predicates and operations
</a></li><li><a href="#g:5">Showing and reading records
</a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>This is a replacement for some of TREX.
</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:RecNil">RecNil</a> = <a href="#v:RecNil">RecNil</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:RecCons">RecCons</a> f a b = <a href="#v:RecCons">RecCons</a> a b</li><li class="src short"><span class="keyword">type</span> <a href="#t:Record">Record</a> r = <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a> -> r</li><li class="src short"><a href="#v:emptyRecord">emptyRecord</a> :: <a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></li><li class="src short"><a href="#v:.-61-.">(.=.)</a> :: l f a -> a -> <a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a>)</li><li class="src short"><a href="#v:-35-">(#)</a> :: <a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a>) -> (b -> c) -> b -> <a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a c</li><li class="src short"><span class="keyword">class</span> <a href="#t:FieldTag">FieldTag</a> f <span class="keyword">where</span><ul class="subs"><li><a href="#v:fieldName">fieldName</a> :: f -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a></li></ul></li><li class="src short"><span class="keyword">class</span> <a href="#t:HasField">HasField</a> f r </li><li class="src short"><span class="keyword">class</span> <a href="#t:Select">Select</a> f r a | f r -> a <span class="keyword">where</span><ul class="subs"><li><a href="#v:-33-">(!)</a> :: r -> f -> a</li></ul></li><li class="src short"><span class="keyword">class</span> <a href="#t:SetField">SetField</a> f r a </li><li class="src short"><a href="#v:setField">setField</a> :: <a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f r a => l f a -> a -> r -> r</li><li class="src short"><span class="keyword">class</span> <a href="#t:RecCat">RecCat</a> r1 r2 r3 | r1 r2 -> r3 <span class="keyword">where</span><ul class="subs"><li><a href="#v:recCat">recCat</a> :: r1 -> r2 -> r3</li></ul></li><li class="src short"><span class="keyword">class</span> <a href="#t:ShowLabels">ShowLabels</a> r <span class="keyword">where</span><ul class="subs"><li><a href="#v:recordLabels">recordLabels</a> :: r -> [<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>]</li></ul></li><li class="src short"><span class="keyword">class</span> <a href="#t:ShowRecRow">ShowRecRow</a> r <span class="keyword">where</span><ul class="subs"><li><a href="#v:showRecRow">showRecRow</a> :: r -> [(<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Show.html#t:ShowS">ShowS</a>)]</li></ul></li><li class="src short"><span class="keyword">class</span> <a href="#t:ReadRecRow">ReadRecRow</a> r <span class="keyword">where</span><ul class="subs"><li><a href="#v:readRecRow">readRecRow</a> :: [(<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>)] -> [(r, [(<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>)])]</li></ul></li></ul></div><div id="interface"><h1 id="g:1">Record types
</h1><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:RecNil" class="def">RecNil</a> <a href="src/Database-HaskellDB-HDBRec.html#RecNil" class="link">Source</a></p><div class="doc"><p>The empty record.
</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:RecNil" class="def">RecNil</a></td><td class="doc empty"> </td></tr></table></div><div class="subs instances"><p id="control.i:RecNil" class="caption collapser" onclick="toggleSection('i:RecNil')">Instances</p><div id="section.i:RecNil" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Ord.html#t:Ord">Ord</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ReadRecRow">ReadRecRow</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ShowLabels">ShowLabels</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-Query.html#t:ToPrimExprs">ToPrimExprs</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-Query.html#t:RelToRec">RelToRec</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-FieldType.html#t:ExprTypes">ExprTypes</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-Query.html#t:ConstantRecord">ConstantRecord</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-Query.html#t:ProjectRec">ProjectRec</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-Query.html#t:InsertRec">InsertRec</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-Database.html#t:GetRec">GetRec</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:RecCat">RecCat</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a> r r</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f r => <a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f r a => <a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r) a</td><td class="doc empty"> </td></tr><tr><td class="src">SelectField f r a => SelectField f (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r) a</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> r => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Ord.html#t:Ord">Ord</a> r => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Ord.html#t:Ord">Ord</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ReadRecRow">ReadRecRow</a> r => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> r => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> r => <a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ShowLabels">ShowLabels</a> r => <a href="Database-HaskellDB-HDBRec.html#t:ShowLabels">ShowLabels</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-FieldType.html#t:ExprTypes">ExprTypes</a> r => <a href="Database-HaskellDB-FieldType.html#t:ExprTypes">ExprTypes</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-Query.html#t:ConstantRecord">ConstantRecord</a> r cr => <a href="Database-HaskellDB-Query.html#t:ConstantRecord">ConstantRecord</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r) (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> cr)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:RecCat">RecCat</a> r1 r2 r3 => <a href="Database-HaskellDB-HDBRec.html#t:RecCat">RecCat</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r1) (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r2) (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r3)</td><td class="doc empty"> </td></tr><tr><td class="src">SelectField f r a => <a href="Database-HaskellDB-HDBRec.html#t:Select">Select</a> (l f a) (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r) a</td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:RecCons" class="def">RecCons</a> f a b <a href="src/Database-HaskellDB-HDBRec.html#RecCons" class="link">Source</a></p><div class="doc"><p>Constructor that adds a field to a record.
f is the field tag, a is the field value and b is the rest of the record.
</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:RecCons" class="def">RecCons</a> a b</td><td class="doc empty"> </td></tr></table></div><div class="subs instances"><p id="control.i:RecCons" class="caption collapser" onclick="toggleSection('i:RecCons')">Instances</p><div id="section.i:RecCons" class="show"><table><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f r => <a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> g a r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f r a => <a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> g b r) a</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r) a</td><td class="doc empty"> </td></tr><tr><td class="src">SelectField f r a => SelectField f (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> g b r) a</td><td class="doc empty"> </td></tr><tr><td class="src">SelectField f (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r) a</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> b) => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a b)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Ord.html#t:Ord">Ord</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Ord.html#t:Ord">Ord</a> b) => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Ord.html#t:Ord">Ord</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a b)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-HDBRec.html#t:FieldTag">FieldTag</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> b, <a href="Database-HaskellDB-HDBRec.html#t:ReadRecRow">ReadRecRow</a> c) => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> a b c)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-HDBRec.html#t:FieldTag">FieldTag</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> b, <a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> c) => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> a b c)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-HDBRec.html#t:FieldTag">FieldTag</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> b, <a href="Database-HaskellDB-HDBRec.html#t:ReadRecRow">ReadRecRow</a> c) => <a href="Database-HaskellDB-HDBRec.html#t:ReadRecRow">ReadRecRow</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> a b c)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-HDBRec.html#t:FieldTag">FieldTag</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> b, <a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> c) => <a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> a b c)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-HDBRec.html#t:FieldTag">FieldTag</a> f, <a href="Database-HaskellDB-HDBRec.html#t:ShowLabels">ShowLabels</a> r) => <a href="Database-HaskellDB-HDBRec.html#t:ShowLabels">ShowLabels</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-Query.html#t:ExprC">ExprC</a> e, <a href="Database-HaskellDB-Query.html#t:ToPrimExprs">ToPrimExprs</a> r) => <a href="Database-HaskellDB-Query.html#t:ToPrimExprs">ToPrimExprs</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> l (e a) r)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-Query.html#t:RelToRec">RelToRec</a> rest, <a href="Database-HaskellDB-HDBRec.html#t:FieldTag">FieldTag</a> f) => <a href="Database-HaskellDB-Query.html#t:RelToRec">RelToRec</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f (<a href="Database-HaskellDB-Query.html#t:Expr">Expr</a> a) rest)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-FieldType.html#t:ExprType">ExprType</a> e, <a href="Database-HaskellDB-FieldType.html#t:ExprTypes">ExprTypes</a> r) => <a href="Database-HaskellDB-FieldType.html#t:ExprTypes">ExprTypes</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f e r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:RecCat">RecCat</a> r1 r2 r3 => <a href="Database-HaskellDB-HDBRec.html#t:RecCat">RecCat</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r1) r2 (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r3)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-Query.html#t:ShowConstant">ShowConstant</a> a, <a href="Database-HaskellDB-Query.html#t:ConstantRecord">ConstantRecord</a> r cr) => <a href="Database-HaskellDB-Query.html#t:ConstantRecord">ConstantRecord</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r) (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f (<a href="Database-HaskellDB-Query.html#t:Expr">Expr</a> a) cr)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-Query.html#t:ProjectExpr">ProjectExpr</a> e, <a href="Database-HaskellDB-Query.html#t:ProjectRec">ProjectRec</a> r er) => <a href="Database-HaskellDB-Query.html#t:ProjectRec">ProjectRec</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f (e a) r) (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f (<a href="Database-HaskellDB-Query.html#t:Expr">Expr</a> a) er)</td><td class="doc empty"> </td></tr><tr><td class="src">(InsertExpr e, <a href="Database-HaskellDB-Query.html#t:InsertRec">InsertRec</a> r er) => <a href="Database-HaskellDB-Query.html#t:InsertRec">InsertRec</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f (e a) r) (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f (<a href="Database-HaskellDB-Query.html#t:Expr">Expr</a> a) er)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-Database.html#t:GetValue">GetValue</a> a, <a href="Database-HaskellDB-Database.html#t:GetRec">GetRec</a> er vr) => <a href="Database-HaskellDB-Database.html#t:GetRec">GetRec</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f (<a href="Database-HaskellDB-Query.html#t:Expr">Expr</a> a) er) (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a vr)</td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Record" class="def">Record</a> r = <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a> -> r<a href="src/Database-HaskellDB-HDBRec.html#Record" class="link">Source</a></p><div class="doc"><p>The type used for records. This is a function
that takes a <code><a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></code> so that the user does not have to
put a <code><a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></code> at the end of every record.
</p></div></div><h1 id="g:2">Record construction
</h1><div class="top"><p class="src"><a name="v:emptyRecord" class="def">emptyRecord</a> :: <a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a><a href="src/Database-HaskellDB-HDBRec.html#emptyRecord" class="link">Source</a></p><div class="doc"><p>The empty record
</p></div></div><div class="top"><p class="src"><a name="v:.-61-." class="def">(.=.)</a><a href="src/Database-HaskellDB-HDBRec.html#.%3D." class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: l f a</td><td class="doc"><p>Label
</p></td></tr><tr><td class="src">-> a</td><td class="doc"><p>Value
</p></td></tr><tr><td class="src">-> <a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a>)</td><td class="doc"><p>New record
</p></td></tr></table></div><div class="doc"><p>Creates one-field record from a label and a value
</p></div></div><div class="top"><p class="src"><a name="v:-35-" class="def">(#)</a><a href="src/Database-HaskellDB-HDBRec.html#%23" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: <a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a>)</td><td class="doc"><p>Field to add
</p></td></tr><tr><td class="src">-> (b -> c)</td><td class="doc"><p>Rest of record
</p></td></tr><tr><td class="src">-> b -> <a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a c</td><td class="doc"><p>New record
</p></td></tr></table></div><div class="doc"><p>Adds the field from a one-field record to another record.
</p></div></div><h1 id="g:3">Labels
</h1><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:FieldTag" class="def">FieldTag</a> f <span class="keyword">where</span><a href="src/Database-HaskellDB-HDBRec.html#FieldTag" class="link">Source</a></p><div class="doc"><p>Class for field labels.
</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:fieldName" class="def">fieldName</a> :: f -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a><a href="src/Database-HaskellDB-HDBRec.html#fieldName" class="link">Source</a></p><div class="doc"><p>Gets the name of the label.
</p></div></div></div><h1 id="g:4">Record predicates and operations
</h1><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:HasField" class="def">HasField</a> f r <a href="src/Database-HaskellDB-HDBRec.html#HasField" class="link">Source</a></p><div class="doc"><p>The record <code>r</code> has the field <code>f</code> if there is an instance of
<code>HasField f r</code>.
</p></div><div class="subs instances"><p id="control.i:HasField" class="caption collapser" onclick="toggleSection('i:HasField')">Instances</p><div id="section.i:HasField" class="show"><table><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f r => <a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f r => <a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> g a r)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r)</td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:Select" class="def">Select</a> f r a | f r -> a <span class="keyword">where</span><a href="src/Database-HaskellDB-HDBRec.html#Select" class="link">Source</a></p><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:-33-" class="def">(!)</a> :: r -> f -> a<a href="src/Database-HaskellDB-HDBRec.html#%21" class="link">Source</a></p><div class="doc"><p>Field selection operator. It is overloaded so that
users (read HaskellDB) can redefine it for things
with phantom record types.
</p></div></div><div class="subs instances"><p id="control.i:Select" class="caption collapser" onclick="toggleSection('i:Select')">Instances</p><div id="section.i:Select" class="show"><table><tr><td class="src">SelectField f r a => <a href="Database-HaskellDB-HDBRec.html#t:Select">Select</a> (l f a) (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r) a</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:HasField">HasField</a> f r => <a href="Database-HaskellDB-HDBRec.html#t:Select">Select</a> (<a href="Database-HaskellDB-Query.html#t:Attr">Attr</a> f a) (<a href="Database-HaskellDB-Query.html#t:Rel">Rel</a> r) (<a href="Database-HaskellDB-Query.html#t:Expr">Expr</a> a)</td><td class="doc"><p>Field selection operator. It is overloaded to work for both
relations in a query and the result of a query.
That is, it corresponds to both <code><a href="Database-HaskellDB-HDBRec.html#v:-33-">!</a></code> and <code>!.</code> from the original
HaskellDB. An overloaded operator was selected because users
(and the developers) always forgot to use !. instead of !
on query results.
</p></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:SetField" class="def">SetField</a> f r a <a href="src/Database-HaskellDB-HDBRec.html#SetField" class="link">Source</a></p><div class="subs instances"><p id="control.i:SetField" class="caption collapser" onclick="toggleSection('i:SetField')">Instances</p><div id="section.i:SetField" class="show"><table><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f r a => <a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r) a</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f r a => <a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> g b r) a</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r) a</td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:setField" class="def">setField</a> :: <a href="Database-HaskellDB-HDBRec.html#t:SetField">SetField</a> f r a => l f a -> a -> r -> r<a href="src/Database-HaskellDB-HDBRec.html#setField" class="link">Source</a></p></div><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:RecCat" class="def">RecCat</a> r1 r2 r3 | r1 r2 -> r3 <span class="keyword">where</span><a href="src/Database-HaskellDB-HDBRec.html#RecCat" class="link">Source</a></p><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:recCat" class="def">recCat</a> :: r1 -> r2 -> r3<a href="src/Database-HaskellDB-HDBRec.html#recCat" class="link">Source</a></p><div class="doc"><p>Concatenates two records.
</p></div></div><div class="subs instances"><p id="control.i:RecCat" class="caption collapser" onclick="toggleSection('i:RecCat')">Instances</p><div id="section.i:RecCat" class="show"><table><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:RecCat">RecCat</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a> r r</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:RecCat">RecCat</a> r1 r2 r3 => <a href="Database-HaskellDB-HDBRec.html#t:RecCat">RecCat</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r1) (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r2) (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r3)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:RecCat">RecCat</a> r1 r2 r3 => <a href="Database-HaskellDB-HDBRec.html#t:RecCat">RecCat</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r1) r2 (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r3)</td><td class="doc empty"> </td></tr></table></div></div></div><h1 id="g:5">Showing and reading records
</h1><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:ShowLabels" class="def">ShowLabels</a> r <span class="keyword">where</span><a href="src/Database-HaskellDB-HDBRec.html#ShowLabels" class="link">Source</a></p><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:recordLabels" class="def">recordLabels</a> :: r -> [<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>]<a href="src/Database-HaskellDB-HDBRec.html#recordLabels" class="link">Source</a></p></div><div class="subs instances"><p id="control.i:ShowLabels" class="caption collapser" onclick="toggleSection('i:ShowLabels')">Instances</p><div id="section.i:ShowLabels" class="show"><table><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ShowLabels">ShowLabels</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ShowLabels">ShowLabels</a> r => <a href="Database-HaskellDB-HDBRec.html#t:ShowLabels">ShowLabels</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-HDBRec.html#t:FieldTag">FieldTag</a> f, <a href="Database-HaskellDB-HDBRec.html#t:ShowLabels">ShowLabels</a> r) => <a href="Database-HaskellDB-HDBRec.html#t:ShowLabels">ShowLabels</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> f a r)</td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:ShowRecRow" class="def">ShowRecRow</a> r <span class="keyword">where</span><a href="src/Database-HaskellDB-HDBRec.html#ShowRecRow" class="link">Source</a></p><div class="doc"><p>Convert a record to a list of label names and field values.
</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:showRecRow" class="def">showRecRow</a> :: r -> [(<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Show.html#t:ShowS">ShowS</a>)]<a href="src/Database-HaskellDB-HDBRec.html#showRecRow" class="link">Source</a></p></div><div class="subs instances"><p id="control.i:ShowRecRow" class="caption collapser" onclick="toggleSection('i:ShowRecRow')">Instances</p><div id="section.i:ShowRecRow" class="show"><table><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> r => <a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> (<a href="Database-HaskellDB-HDBRec.html#t:Record">Record</a> r)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-HDBRec.html#t:FieldTag">FieldTag</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> b, <a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> c) => <a href="Database-HaskellDB-HDBRec.html#t:ShowRecRow">ShowRecRow</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> a b c)</td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:ReadRecRow" class="def">ReadRecRow</a> r <span class="keyword">where</span><a href="src/Database-HaskellDB-HDBRec.html#ReadRecRow" class="link">Source</a></p><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:readRecRow" class="def">readRecRow</a> :: [(<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>)] -> [(r, [(<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-String.html#t:String">String</a>)])]<a href="src/Database-HaskellDB-HDBRec.html#readRecRow" class="link">Source</a></p><div class="doc"><p>Convert a list of labels and strins representating values
to a record.
</p></div></div><div class="subs instances"><p id="control.i:ReadRecRow" class="caption collapser" onclick="toggleSection('i:ReadRecRow')">Instances</p><div id="section.i:ReadRecRow" class="show"><table><tr><td class="src"><a href="Database-HaskellDB-HDBRec.html#t:ReadRecRow">ReadRecRow</a> <a href="Database-HaskellDB-HDBRec.html#t:RecNil">RecNil</a></td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Database-HaskellDB-HDBRec.html#t:FieldTag">FieldTag</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> b, <a href="Database-HaskellDB-HDBRec.html#t:ReadRecRow">ReadRecRow</a> c) => <a href="Database-HaskellDB-HDBRec.html#t:ReadRecRow">ReadRecRow</a> (<a href="Database-HaskellDB-HDBRec.html#t:RecCons">RecCons</a> a b c)</td><td class="doc empty"> </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.10.0</p></div></body></html>
|