interface Database.CDBI.Description where {
import Database.CDBI.Connection;
import Prelude;
import Time;
data Column a = Column [Prelude.Char] [Prelude.Char];
data ColumnDescription a
  = ColDesc [Prelude.Char] Database.CDBI.Connection.SQLType
            (a -> Database.CDBI.Connection.SQLValue)
            (Database.CDBI.Connection.SQLValue -> a);
data CombinedDescription a
  = CD [([Prelude.Char], Prelude.Int,
         [Database.CDBI.Connection.SQLType])]
       ([Database.CDBI.Connection.SQLValue] -> a)
       (a -> [[Database.CDBI.Connection.SQLValue]])
       (a -> [[Database.CDBI.Connection.SQLValue]]);
data EntityDescription a
  = ED [Prelude.Char] [Database.CDBI.Connection.SQLType]
       (a -> [Database.CDBI.Connection.SQLValue])
       (a -> [Database.CDBI.Connection.SQLValue])
       ([Database.CDBI.Connection.SQLValue] -> a);
type Table = [Prelude.Char];
addDescription
5
::
EntityDescription a -> Prelude.Int -> (a -> b -> b) -> (b -> a) ->
CombinedDescription b -> CombinedDescription b;
boolOrNothing
1
::
Database.CDBI.Connection.SQLValue -> Prelude.Maybe Prelude.Bool;
charOrNothing
1
::
Database.CDBI.Connection.SQLValue -> Prelude.Maybe Prelude.Char;
combineDescriptions
6
::
EntityDescription a -> Prelude.Int -> EntityDescription b ->
Prelude.Int -> (a -> b -> c) -> (c -> (a, b)) ->
CombinedDescription c;
dateOrNothing
1
::
Database.CDBI.Connection.SQLValue -> Prelude.Maybe Time.ClockTime;
floatOrNothing
1
::
Database.CDBI.Connection.SQLValue -> Prelude.Maybe Prelude.Float;
fromStringOrNull
1
::
Database.CDBI.Connection.SQLValue -> [Prelude.Char];
getColumnFull 1 :: Column a -> [Prelude.Char];
getColumnName 1 :: ColumnDescription a -> [Prelude.Char];
getColumnSimple 1 :: Column a -> [Prelude.Char];
getColumnTableName 1 :: ColumnDescription a -> [Prelude.Char];
getColumnTyp
1
::
ColumnDescription a -> Database.CDBI.Connection.SQLType;
getColumnValueBuilder
1
::
ColumnDescription a -> a -> Database.CDBI.Connection.SQLValue;
getColumnValueSelector
1
::
ColumnDescription a -> Database.CDBI.Connection.SQLValue -> a;
getTable 1 :: EntityDescription a -> [Prelude.Char];
getToEntity
1
::
EntityDescription a -> [Database.CDBI.Connection.SQLValue] -> a;
getToInsertValues
1
::
EntityDescription a -> a -> [Database.CDBI.Connection.SQLValue];
getToValues
1
::
EntityDescription a -> a -> [Database.CDBI.Connection.SQLValue];
getTypes
1
::
EntityDescription a -> [Database.CDBI.Connection.SQLType];
intOrNothing
1
::
Database.CDBI.Connection.SQLValue -> Prelude.Maybe Prelude.Int;
keyOrNothing
2
::
(Prelude.Int -> a) -> Database.CDBI.Connection.SQLValue ->
Prelude.Maybe a;
sqlBoolOrNull
1
::
Prelude.Maybe Prelude.Bool -> Database.CDBI.Connection.SQLValue;
sqlCharOrNull
1
::
Prelude.Maybe Prelude.Char -> Database.CDBI.Connection.SQLValue;
sqlDateOrNull
1
::
Prelude.Maybe Time.ClockTime -> Database.CDBI.Connection.SQLValue;
sqlFloatOrNull
1
::
Prelude.Maybe Prelude.Float -> Database.CDBI.Connection.SQLValue;
sqlIntOrNull
1
::
Prelude.Maybe Prelude.Int -> Database.CDBI.Connection.SQLValue;
sqlKeyOrNull
2
::
(a -> Prelude.Int) -> Prelude.Maybe a ->
Database.CDBI.Connection.SQLValue;
sqlString 1 :: [Prelude.Char] -> Database.CDBI.Connection.SQLValue;
sqlStringOrNull
1
::
Prelude.Maybe [Prelude.Char] -> Database.CDBI.Connection.SQLValue;
stringOrNothing
1
::
Database.CDBI.Connection.SQLValue -> Prelude.Maybe [Prelude.Char];
toValueOrNull
2
::
(a -> Database.CDBI.Connection.SQLValue) -> Prelude.Maybe a ->
Database.CDBI.Connection.SQLValue;
hiding data Prelude.Char;
hiding data Database.CDBI.Connection.SQLType;
hiding data Database.CDBI.Connection.SQLValue;
hiding data Prelude.Int;
hiding data Prelude.Maybe a;
hiding data Prelude.Bool;
hiding data Time.ClockTime;
hiding data Prelude.Float;
instance Prelude.Show Database.CDBI.Connection.SQLValue {
  showsPrec 2
} {-# MODULE Database.CDBI.Connection #-};
instance Prelude.Eq Time.ClockTime {
  (==) 2
} {-# MODULE Time #-};
instance Prelude.Ord Time.ClockTime {
  (<=) 2
} {-# MODULE Time #-};
instance Prelude.Read Time.ClockTime {
  readsPrec 2
} {-# MODULE Time #-};
instance Prelude.Show Time.ClockTime {
  showsPrec 2
} {-# MODULE Time #-};
hiding class Prelude.Show a;
hiding class Prelude.Eq a;
hiding class Prelude.Eq a => Prelude.Ord a;
hiding class Prelude.Read a;
instance Prelude.Show () {
  showsPrec 2
} {-# MODULE Prelude #-};
instance (Prelude.Show a, Prelude.Show b) => Prelude.Show (a, b) {
  showsPrec 2
} {-# MODULE Prelude #-};
instance (Prelude.Show a, Prelude.Show b,
          Prelude.Show c) => Prelude.Show (a, b, c) {
  showsPrec 2
} {-# MODULE Prelude #-};
instance (Prelude.Show a, Prelude.Show b, Prelude.Show c,
          Prelude.Show d) => Prelude.Show (a, b, c, d) {
  showsPrec 2
} {-# MODULE Prelude #-};
instance (Prelude.Show a, Prelude.Show b, Prelude.Show c,
          Prelude.Show d, Prelude.Show e) => Prelude.Show (a, b, c, d, e) {
  showsPrec 2
} {-# MODULE Prelude #-};
instance (Prelude.Show a, Prelude.Show b, Prelude.Show c,
          Prelude.Show d, Prelude.Show e, Prelude.Show f) => Prelude.Show (a,
                                                                           b, c, d, e, f) {
  showsPrec 2
} {-# MODULE Prelude #-};
instance (Prelude.Show a, Prelude.Show b, Prelude.Show c,
          Prelude.Show d, Prelude.Show e, Prelude.Show f,
          Prelude.Show g) => Prelude.Show (a, b, c, d, e, f, g) {
  showsPrec 2
} {-# MODULE Prelude #-};
instance (Prelude.Show a, Prelude.Show b, Prelude.Show c,
          Prelude.Show d, Prelude.Show e, Prelude.Show f, Prelude.Show g,
          Prelude.Show h) => Prelude.Show (a, b, c, d, e, f, g, h) {
  showsPrec 2
} {-# MODULE Prelude #-};
instance Prelude.Show a => Prelude.Show [a] {
  showsPrec 1
} {-# MODULE Prelude #-};
instance Prelude.Show Prelude.Bool {
  showsPrec 2
} {-# MODULE Prelude #-};
instance Prelude.Show Prelude.Char {
  showList 1;
  showsPrec 2
} {-# MODULE Prelude #-};
instance (Prelude.Show a,
          Prelude.Show b) => Prelude.Show (Prelude.Either a b) {
  showsPrec 2
} {-# MODULE Prelude #-};
instance Prelude.Show Prelude.Float {
  showsPrec 0
} {-# MODULE Prelude #-};
instance Prelude.Show Prelude.IOError {
  showsPrec 2
} {-# MODULE Prelude #-};
instance Prelude.Show Prelude.Int {
  showsPrec 0
} {-# MODULE Prelude #-};
instance Prelude.Show a => Prelude.Show (Prelude.Maybe a) {
  showsPrec 2
} {-# MODULE Prelude #-};
instance Prelude.Show Prelude.Ordering {
  showsPrec 2
} {-# MODULE Prelude #-};
instance Prelude.Eq () {
  (==) 2
} {-# MODULE Prelude #-};
instance (Prelude.Eq a, Prelude.Eq b) => Prelude.Eq (a, b) {
  (==) 2
} {-# MODULE Prelude #-};
instance (Prelude.Eq a, Prelude.Eq b,
          Prelude.Eq c) => Prelude.Eq (a, b, c) {
  (==) 2
} {-# MODULE Prelude #-};
instance (Prelude.Eq a, Prelude.Eq b, Prelude.Eq c,
          Prelude.Eq d) => Prelude.Eq (a, b, c, d) {
  (==) 2
} {-# MODULE Prelude #-};
instance (Prelude.Eq a, Prelude.Eq b, Prelude.Eq c, Prelude.Eq d,
          Prelude.Eq e) => Prelude.Eq (a, b, c, d, e) {
  (==) 2
} {-# MODULE Prelude #-};
instance (Prelude.Eq a, Prelude.Eq b, Prelude.Eq c, Prelude.Eq d,
          Prelude.Eq e, Prelude.Eq f) => Prelude.Eq (a, b, c, d, e, f) {
  (==) 2
} {-# MODULE Prelude #-};
instance (Prelude.Eq a, Prelude.Eq b, Prelude.Eq c, Prelude.Eq d,
          Prelude.Eq e, Prelude.Eq f, Prelude.Eq g) => Prelude.Eq (a, b, c,
                                                                   d, e, f, g) {
  (==) 2
} {-# MODULE Prelude #-};
instance Prelude.Eq a => Prelude.Eq [a] {
  (==) 2
} {-# MODULE Prelude #-};
instance Prelude.Eq Prelude.Bool {
  (==) 2
} {-# MODULE Prelude #-};
instance Prelude.Eq Prelude.Char {
  (==) 2
} {-# MODULE Prelude #-};
instance (Prelude.Eq a,
          Prelude.Eq b) => Prelude.Eq (Prelude.Either a b) {
  (==) 2
} {-# MODULE Prelude #-};
instance Prelude.Eq Prelude.Float {
  (==) 2
} {-# MODULE Prelude #-};
instance Prelude.Eq Prelude.IOError {
  (==) 2
} {-# MODULE Prelude #-};
instance Prelude.Eq Prelude.Int {
  (==) 2
} {-# MODULE Prelude #-};
instance Prelude.Eq a => Prelude.Eq (Prelude.Maybe a) {
  (==) 2
} {-# MODULE Prelude #-};
instance Prelude.Eq Prelude.Ordering {
  (==) 2
} {-# MODULE Prelude #-};
instance Prelude.Ord () {
  (<=) 2
} {-# MODULE Prelude #-};
instance (Prelude.Ord a, Prelude.Ord b) => Prelude.Ord (a, b) {
  (<=) 2
} {-# MODULE Prelude #-};
instance (Prelude.Ord a, Prelude.Ord b,
          Prelude.Ord c) => Prelude.Ord (a, b, c) {
  (<=) 2
} {-# MODULE Prelude #-};
instance (Prelude.Ord a, Prelude.Ord b, Prelude.Ord c,
          Prelude.Ord d) => Prelude.Ord (a, b, c, d) {
  (<=) 2
} {-# MODULE Prelude #-};
instance (Prelude.Ord a, Prelude.Ord b, Prelude.Ord c,
          Prelude.Ord d, Prelude.Ord e) => Prelude.Ord (a, b, c, d, e) {
  (<=) 2
} {-# MODULE Prelude #-};
instance Prelude.Ord a => Prelude.Ord [a] {
  (<=) 2
} {-# MODULE Prelude #-};
instance Prelude.Ord Prelude.Bool {
  (<=) 2
} {-# MODULE Prelude #-};
instance Prelude.Ord Prelude.Char {
  (<=) 2
} {-# MODULE Prelude #-};
instance (Prelude.Ord a,
          Prelude.Ord b) => Prelude.Ord (Prelude.Either a b) {
  (<=) 2
} {-# MODULE Prelude #-};
instance Prelude.Ord Prelude.Float {
  (<=) 2
} {-# MODULE Prelude #-};
instance Prelude.Ord Prelude.Int {
  (<=) 2
} {-# MODULE Prelude #-};
instance Prelude.Ord a => Prelude.Ord (Prelude.Maybe a) {
  (<=) 2
} {-# MODULE Prelude #-};
instance Prelude.Ord Prelude.Ordering {
  (<=) 2
} {-# MODULE Prelude #-};
instance Prelude.Read () {
  readsPrec 1
} {-# MODULE Prelude #-};
instance (Prelude.Read a, Prelude.Read b) => Prelude.Read (a, b) {
  readsPrec 1
} {-# MODULE Prelude #-};
instance (Prelude.Read a, Prelude.Read b,
          Prelude.Read c) => Prelude.Read (a, b, c) {
  readsPrec 1
} {-# MODULE Prelude #-};
instance (Prelude.Read a, Prelude.Read b, Prelude.Read c,
          Prelude.Read d) => Prelude.Read (a, b, c, d) {
  readsPrec 1
} {-# MODULE Prelude #-};
instance (Prelude.Read a, Prelude.Read b, Prelude.Read c,
          Prelude.Read d, Prelude.Read e) => Prelude.Read (a, b, c, d, e) {
  readsPrec 1
} {-# MODULE Prelude #-};
instance Prelude.Read a => Prelude.Read [a] {
  readsPrec 1
} {-# MODULE Prelude #-};
instance Prelude.Read Prelude.Bool {
  readsPrec 2
} {-# MODULE Prelude #-};
instance Prelude.Read Prelude.Char {
  readList 1;
  readsPrec 1
} {-# MODULE Prelude #-};
instance (Prelude.Read a,
          Prelude.Read b) => Prelude.Read (Prelude.Either a b) {
  readsPrec 2
} {-# MODULE Prelude #-};
instance Prelude.Read Prelude.Float {
  readsPrec 1
} {-# MODULE Prelude #-};
instance Prelude.Read Prelude.IOError {
  readsPrec 2
} {-# MODULE Prelude #-};
instance Prelude.Read Prelude.Int {
  readsPrec 1
} {-# MODULE Prelude #-};
instance Prelude.Read a => Prelude.Read (Prelude.Maybe a) {
  readsPrec 2
} {-# MODULE Prelude #-};
instance Prelude.Read Prelude.Ordering {
  readsPrec 2
} {-# MODULE Prelude #-};
hiding data Prelude.Either a b;
hiding data Prelude.IOError;
hiding data Prelude.Ordering
}