Versions in this module Expand all Collapse all v0 v0.1.0 Oct 19, 2026 Changes in this version + var ErrUnsupportedType = errors.New("unsupported type") + type Decimal = decimal.Decimal + type JSON struct + V T + Valid bool + func NewJSON[T any](v T) JSON[T] + func (s *JSON[T]) Scan(value any) error + func (s *JSON[T]) UnmarshalJSON(data []byte) error + func (s JSON[T]) MarshalJSON() ([]byte, error) + func (s JSON[T]) Value() (driver.Value, error) + type Map map[string]T + func (m *Map[T]) Scan(value any) error + func (m *Map[T]) UnmarshalJSON(data []byte) error + func (m Map[T]) ToRawJSON() (RawJSON, error) + func (m Map[T]) Value() (driver.Value, error) + type Null struct + ParsedNull bool + func NewNullFromPtr[T any](v *T) Null[T] + func NewNullWithValid[T any](v T, valid bool) Null[T] + func NewNull[T any](v T) Null[T] + func NewTimeNull(t time.Time) Null[Time] + func NewTimeNullFromPtr(t *time.Time) Null[Time] + func NewTimeNullWithValid(t time.Time, valid bool) Null[Time] + func (n *Null[T]) Merge(old Null[T]) + func (n *Null[T]) Present() bool + func (n *Null[T]) Scan(value any) error + func (n *Null[T]) UnmarshalJSON(data []byte) error + func (n Null[T]) MarshalJSON() ([]byte, error) + func (n Null[T]) Ptr() *T + func (n Null[T]) ValueOrZero() T + type NullDecimal = decimal.NullDecimal + type RawJSON []byte + func (r *RawJSON) Scan(value any) error + func (r *RawJSON) UnmarshalJSON(data []byte) error + func (r RawJSON) MarshalJSON() ([]byte, error) + func (r RawJSON) ToMap() (Map[any], error) + func (r RawJSON) Value() (driver.Value, error) + type Slice []T + func (s *Slice[T]) Scan(value any) error + func (s Slice[T]) Value() (driver.Value, error) + type Time struct + func NewTime(t time.Time) Time + func (t *Time) Parse(s string) error + func (t *Time) Scan(value any) error + func (t *Time) UnmarshalJSON(data []byte) error + func (t Time) MarshalJSON() ([]byte, error) + func (t Time) String() string + func (t Time) Value() (driver.Value, error)