Copyright | HWT Group (c) 2003, [email protected] |
---|---|
License | BSD-style |
Maintainer | [email protected] |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell98 |
Database.HaskellDB.FieldType
Description
Defines the types of database columns, and functions for converting these between HSQL and internal formats
- type FieldDesc = (FieldType, Bool)
- data FieldType
- = StringT
- | IntT
- | IntegerT
- | DoubleT
- | BoolT
- | CalendarTimeT
- | LocalTimeT
- | BStrT Int
- toHaskellType :: FieldType -> String
- class ExprType e where
- fromHaskellType :: e -> FieldDesc
- class ExprTypes r where
- fromHaskellTypes :: r -> [FieldDesc]
- queryFields :: (ShowLabels r, ExprTypes r) => Query (Rel r) -> [(String, FieldDesc)]
Documentation
A database column type
Constructors
StringT | |
IntT | |
IntegerT | |
DoubleT | |
BoolT | |
CalendarTimeT | |
LocalTimeT | |
BStrT Int |
toHaskellType :: FieldType -> String Source
Class which retrieves a field description from a given type. Instances are provided for most concrete types. Instances for Maybe automatically make the field nullable, and instances for all (Expr a) types where a has an ExprType instance allows type information to be recovered from a given column expression.
Methods
fromHaskellType :: e -> FieldDesc Source
class ExprTypes r where Source
Class which returns a list of field descriptions. Gets the descriptions of all columns in a Record/query. Most useful when the columns associated with each field in a (Rel r) type must be recovered. Note that this occurs at the type level only and no values are inspected.
Methods
fromHaskellTypes :: r -> [FieldDesc] Source
queryFields :: (ShowLabels r, ExprTypes r) => Query (Rel r) -> [(String, FieldDesc)] Source
Given a query, returns a list of the field names and their types used by the query. Useful for recovering field information once a query has been built up.