postgleam/value
Types
A PostgreSQL value
pub type Value {
Null
Boolean(Bool)
Integer(Int)
Float(Float)
PosInfinity
NegInfinity
NaN
Text(String)
Bytea(BitArray)
Uuid(BitArray)
Oid(Int)
Void
Array(List(option.Option(Value)))
Date(Int)
Time(Int)
TimeTz(microseconds: Int, tz_offset: Int)
Timestamp(Int)
Timestamptz(Int)
Interval(microseconds: Int, days: Int, months: Int)
Json(String)
Jsonb(String)
Numeric(String)
Point(x: Float, y: Float)
Inet(family: Int, address: BitArray, netmask: Int)
Macaddr(BitArray)
}
Constructors
-
NullNULL
-
Boolean(Bool)Boolean
-
Integer(Int)Integer (int2, int4, int8)
-
Float(Float)Float (float4, float8) - normal finite values
-
PosInfinityPositive infinity (float4, float8, timestamp, timestamptz)
-
NegInfinityNegative infinity (float4, float8, timestamp, timestamptz)
-
NaNNaN (float4, float8, numeric)
-
Text(String)Text string (text, varchar, char, bpchar, name, citext, unknown, enum)
-
Bytea(BitArray)Raw bytes (bytea)
-
Uuid(BitArray)UUID as 16-byte binary
-
Oid(Int)OID (oid, regclass, regtype, xid, cid, etc.)
-
VoidVoid (void type, no data)
-
Array(List(option.Option(Value)))Array of values
-
Date(Int)Date as days since 2000-01-01 (negative for dates before)
-
Time(Int)Time as microseconds since midnight
-
TimeTz(microseconds: Int, tz_offset: Int)TimeTZ as microseconds since midnight + timezone offset in seconds
-
Timestamp(Int)Timestamp as microseconds since 2000-01-01 00:00:00
-
Timestamptz(Int)Timestamptz as microseconds since 2000-01-01 00:00:00 UTC
-
Interval(microseconds: Int, days: Int, months: Int)Interval: microseconds, days, months
-
Json(String)JSON string (already serialized)
-
Jsonb(String)JSONB string (already serialized)
-
Numeric(String)Numeric as string representation (preserving precision)
-
Point(x: Float, y: Float)Point (x, y)
-
Inet(family: Int, address: BitArray, netmask: Int)Inet/CIDR address: family (2=ipv4, 3=ipv6), address bytes, netmask
-
Macaddr(BitArray)MAC address (6 bytes)