Contains the SQL data types, type errors, and a few supporting functions.
- data Type
- = ScalarType String
- | ArrayType Type
- | SetOfType Type
- | NamedCompositeType String
- | CompositeType [(String, Type)]
- | AnonymousRecordType [Type]
- | PgRecord (Maybe Type)
- | DomainType String
- | EnumType String
- | Pseudo PseudoType
- | UnknownType
- data PseudoType
- = Any
- | AnyArray
- | AnyElement
- | AnyEnum
- | AnyNonArray
- | Cstring
- | Record
- | TriggerRecord
- | Trigger
- | Void
- | Internal
- | LanguageHandler
- | Opaque
- | FdwHandler
- typeSmallInt, typeInterval, typeDate, typeBool, typeChar, typeVarChar, typeFloat8, typeFloat4, typeNumeric, typeInt, typeBigInt :: Type
- canonicalizeTypeName :: String -> String
- canonicalizeTypes :: Data a => a -> a
- data TypeError
- = WrongTypes Type [Type]
- | UnknownTypeError Type
- | UnknownTypeName String
- | NoMatchingOperator String [Type]
- | TypelessEmptyArray
- | IncompatibleTypeSet [Type]
- | IncompatibleTypes Type Type
- | ValuesListsMustBeSameLength
- | NoRowsGivenForValues
- | UnrecognisedIdentifier String
- | UnrecognisedRelation String
- | UnrecognisedCorrelationName String
- | BadStarExpand
- | AmbiguousIdentifier String
- | ContextError String
- | MissingJoinAttribute
- | ExpressionMustBeBool
- | WrongNumberOfColumns
- | ExpectedDomainType Type
- | DomainDefNotFound Type
- | BadCatalogUpdate String
- | TypeAlreadyExists Type
- | AnyAllError String
- | InternalError String
- | FromToTypesNotSame Type Type
- | WrongNumberOfAliasCols Int Int
- | MiscError String
SQL types
data Type
ScalarType String | |
ArrayType Type | |
SetOfType Type | |
NamedCompositeType String | |
CompositeType [(String, Type)] | |
AnonymousRecordType [Type] | |
PgRecord (Maybe Type) | |
DomainType String | |
EnumType String | |
Pseudo PseudoType | |
UnknownType |
data PseudoType
type aliases
aliases for all the sql types with multiple names these give you the canonical names
typeSmallInt, typeInterval, typeDate, typeBool, typeChar, typeVarChar, typeFloat8, typeFloat4, typeNumeric, typeInt, typeBigInt :: Type
canonicalizeTypeName :: String -> String
canonicalizeTypes :: Data a => a -> a
Type errors
data TypeError