| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Hpgsql.TypeInfo
Description
This file has is very similar to a similarly named file from the great postgresql-simple library, more specifically to https://hackage.haskell.org/package/postgresql-simple-0.7.0.0/docs/src/Database.PostgreSQL.Simple.TypeInfo.Static.html We started with that and later came up with our own from scratch, though. We thank them for their great work.
Synopsis
- newtype EncodingContext = EncodingContext {
- typeInfoCache :: TypeInfoCache
- newtype Oid = Oid Int32
- data TypeInfo = TypeInfo {
- typeOid :: !Oid
- typeName :: !Text
- oidOfArrayType :: !(Maybe Oid)
- typeDetails :: !TypeDetails
- data TypeDetails
- newtype ArrayTypeDetails = ArrayTypeDetails {
- elemTypeOid :: Oid
- builtinPgTypesMap :: TypeInfoCache
- buildTypeInfoCache :: [TypeInfo] -> TypeInfoCache
- lookupTypeByName :: Text -> TypeInfoCache -> Maybe TypeInfo
- lookupTypeByOid :: Oid -> TypeInfoCache -> Maybe TypeInfo
- boolOid :: Oid
- byteaOid :: Oid
- charOid :: Oid
- nameOid :: Oid
- int8Oid :: Oid
- int2Oid :: Oid
- int4Oid :: Oid
- regprocOid :: Oid
- textOid :: Oid
- oidOid :: Oid
- tidOid :: Oid
- xidOid :: Oid
- cidOid :: Oid
- xmlOid :: Oid
- pointOid :: Oid
- lsegOid :: Oid
- pathOid :: Oid
- boxOid :: Oid
- polygonOid :: Oid
- lineOid :: Oid
- cidrOid :: Oid
- float4Oid :: Oid
- float8Oid :: Oid
- unknownOid :: Oid
- circleOid :: Oid
- moneyOid :: Oid
- macaddrOid :: Oid
- inetOid :: Oid
- bpcharOid :: Oid
- varcharOid :: Oid
- dateOid :: Oid
- timeOid :: Oid
- timestampOid :: Oid
- timestamptzOid :: Oid
- intervalOid :: Oid
- timetzOid :: Oid
- bitOid :: Oid
- varbitOid :: Oid
- numericOid :: Oid
- refcursorOid :: Oid
- recordOid :: Oid
- voidOid :: Oid
- regprocedureOid :: Oid
- regoperOid :: Oid
- regoperatorOid :: Oid
- regclassOid :: Oid
- regtypeOid :: Oid
- uuidOid :: Oid
- jsonOid :: Oid
- jsonbOid :: Oid
- int2vectorOid :: Oid
- oidvectorOid :: Oid
- int4rangeOid :: Oid
- _int4rangeOid :: Oid
- numrangeOid :: Oid
- _numrangeOid :: Oid
- tsrangeOid :: Oid
- _tsrangeOid :: Oid
- tstzrangeOid :: Oid
- _tstzrangeOid :: Oid
- daterangeOid :: Oid
- _daterangeOid :: Oid
- int8rangeOid :: Oid
- _int8rangeOid :: Oid
- _boolOid :: Oid
- _byteaOid :: Oid
- _charOid :: Oid
- _nameOid :: Oid
- _int2Oid :: Oid
- _int4Oid :: Oid
- _int8Oid :: Oid
- _textOid :: Oid
- _oidOid :: Oid
- _float4Oid :: Oid
- _float8Oid :: Oid
- _numericOid :: Oid
- _dateOid :: Oid
- _timestamptzOid :: Oid
- _intervalOid :: Oid
- _jsonOid :: Oid
- _jsonbOid :: Oid
- _varcharOid :: Oid
Documentation
newtype EncodingContext Source #
Constructors
| EncodingContext | |
Fields
| |
Instances
| Enum Oid Source # | |
| Num Oid Source # | |
| Integral Oid Source # | |
| Real Oid Source # | |
Defined in Hpgsql.TypeInfo Methods toRational :: Oid -> Rational # | |
| Show Oid Source # | |
| Eq Oid Source # | |
| Ord Oid Source # | |
| FromPgField Oid Source # | |
Defined in Hpgsql.Encoding Methods | |
| ToPgField Oid Source # | |
Defined in Hpgsql.Encoding Methods | |
Constructors
| TypeInfo | |
Fields
| |
data TypeDetails Source #
newtype ArrayTypeDetails Source #
Constructors
| ArrayTypeDetails | |
Fields
| |
builtinPgTypesMap :: TypeInfoCache Source #
This contains every type that is builtin to PostgreSQL
alongside some info about them.
User defined types are not available here, but are accessible
in EncodingContext in many places where it might be useful.
buildTypeInfoCache :: [TypeInfo] -> TypeInfoCache Source #
regprocOid :: Oid Source #
polygonOid :: Oid Source #
unknownOid :: Oid Source #
macaddrOid :: Oid Source #
varcharOid :: Oid Source #
timestampOid :: Oid Source #
timestamptzOid :: Oid Source #
intervalOid :: Oid Source #
numericOid :: Oid Source #
refcursorOid :: Oid Source #
regoperOid :: Oid Source #
regoperatorOid :: Oid Source #
regclassOid :: Oid Source #
regtypeOid :: Oid Source #
int2vectorOid :: Oid Source #
oidvectorOid :: Oid Source #
int4rangeOid :: Oid Source #
_int4rangeOid :: Oid Source #
numrangeOid :: Oid Source #
_numrangeOid :: Oid Source #
tsrangeOid :: Oid Source #
_tsrangeOid :: Oid Source #
tstzrangeOid :: Oid Source #
_tstzrangeOid :: Oid Source #
daterangeOid :: Oid Source #
_daterangeOid :: Oid Source #
int8rangeOid :: Oid Source #
_int8rangeOid :: Oid Source #
_float4Oid :: Oid Source #
_float8Oid :: Oid Source #
_numericOid :: Oid Source #
_intervalOid :: Oid Source #
_varcharOid :: Oid Source #