package types

import "github.com/ydb-platform/ydb-go-sdk/v3/table/types"

Index

Constants

const (
	TypeUnknown      = types.Unknown
	TypeBool         = types.Bool
	TypeInt8         = types.Int8
	TypeUint8        = types.Uint8
	TypeInt16        = types.Int16
	TypeUint16       = types.Uint16
	TypeInt32        = types.Int32
	TypeUint32       = types.Uint32
	TypeInt64        = types.Int64
	TypeUint64       = types.Uint64
	TypeFloat        = types.Float
	TypeDouble       = types.Double
	TypeDate         = types.Date
	TypeDatetime     = types.Datetime
	TypeTimestamp    = types.Timestamp
	TypeInterval     = types.Interval
	TypeTzDate       = types.TzDate
	TypeTzDatetime   = types.TzDatetime
	TypeTzTimestamp  = types.TzTimestamp
	TypeString       = types.Bytes
	TypeBytes        = types.Bytes
	TypeUTF8         = types.Text
	TypeText         = types.Text
	TypeYSON         = types.YSON
	TypeJSON         = types.JSON
	TypeUUID         = types.UUID
	TypeJSONDocument = types.JSONDocument
	TypeDyNumber     = types.DyNumber
)

Primitive types known by YDB.

Variables

var DefaultDecimal = DecimalType(decimalPrecision, decimalScale)

Functions

func CastTo

func CastTo(v Value, dst interface{}) error

CastTo try cast value to destination type value

func DictFields

func DictFields(v Value) (map[Value]Value, error)

DictFields returns dict values from abstract Value

Deprecated: use DictValues instead. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated

func DictValues

func DictValues(v Value) (map[Value]Value, error)

DictValues returns dict values from abstract Value

func Equal

func Equal(lhs, rhs Type) bool

Equal checks for type equivalence

func StructFields

func StructFields(v Value) (map[string]Value, error)

StructFields returns struct fields from abstract Value

func WriteTypeStringTo

func WriteTypeStringTo(buf *bytes.Buffer, t Type)

WriteTypeStringTo writes ydb type string representation into buffer

Deprecated: use types.Type.Yql() instead. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated

Types

type Decimal

type Decimal = decimal.Decimal

Decimal supported in scanner API

func ToDecimal

func ToDecimal(v Value) (*Decimal, error)

ToDecimal returns Decimal struct from abstract Value

type DictValueOption

type DictValueOption func(*dictValueFields)

func DictFieldValue

func DictFieldValue(k, v Value) DictValueOption

type RawValue

type RawValue = scanner.RawValue

type Scanner

type Scanner = scanner.Scanner

type StructOption

type StructOption func(*tStructType)

func StructField

func StructField(name string, t Type) StructOption

type StructValueOption

type StructValueOption func(*structValueFields)

func StructFieldValue

func StructFieldValue(name string, v Value) StructValueOption

type Type

type Type = types.Type

Type describes YDB data types.

func DecimalType

func DecimalType(precision, scale uint32) Type

func DecimalTypeFromDecimal

func DecimalTypeFromDecimal(d *Decimal) Type

func Dict

func Dict(k, v Type) Type

func IsOptional

func IsOptional(t Type) (isOptional bool, innerType Type)

IsOptional checks if type is optional and returns innerType if it is.

func List

func List(t Type) Type

func Optional

func Optional(t Type) Type

func Struct

func Struct(opts ...StructOption) Type

func Tuple

func Tuple(elems ...Type) Type

func VariantStruct

func VariantStruct(opts ...StructOption) Type

func VariantTuple

func VariantTuple(elems ...Type) Type

func Void

func Void() Type

type Value

type Value = value.Value

func BoolValue

func BoolValue(v bool) Value

func BytesValue

func BytesValue(v []byte) Value

func BytesValueFromString

func BytesValueFromString(v string) Value

func DateValue

func DateValue(v uint32) Value

DateValue returns ydb date value by given days since Epoch

func DateValueFromTime

func DateValueFromTime(t time.Time) Value

DateValueFromTime makes Date value from time.Time

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func DatetimeValue

func DatetimeValue(v uint32) Value

DatetimeValue makes ydb datetime value from seconds since Epoch

func DatetimeValueFromTime

func DatetimeValueFromTime(t time.Time) Value

DatetimeValueFromTime makes Datetime value from time.Time

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func DecimalValue

func DecimalValue(v *Decimal) Value

DecimalValue creates decimal value of given types t and value v. Note that Decimal.Bytes interpreted as big-endian int128.

func DecimalValueFromBigInt

func DecimalValueFromBigInt(v *big.Int, precision, scale uint32) Value

func DictValue

func DictValue(opts ...DictValueOption) Value

func DoubleValue

func DoubleValue(v float64) Value

func DyNumberValue

func DyNumberValue(v string) Value

func FloatValue

func FloatValue(v float32) Value

func Int16Value

func Int16Value(v int16) Value

func Int32Value

func Int32Value(v int32) Value

func Int64Value

func Int64Value(v int64) Value

func Int8Value

func Int8Value(v int8) Value

func IntervalValue

func IntervalValue(v int64) Value

IntervalValue makes Value from given microseconds value

Deprecated: use IntervalValueFromMicroseconds instead. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated

func IntervalValueFromDuration

func IntervalValueFromDuration(v time.Duration) Value

IntervalValueFromDuration makes Interval value from time.Duration

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func IntervalValueFromMicroseconds

func IntervalValueFromMicroseconds(v int64) Value

IntervalValueFromMicroseconds makes Value from given microseconds value

func JSONDocumentValue

func JSONDocumentValue(v string) Value

func JSONDocumentValueFromBytes

func JSONDocumentValueFromBytes(v []byte) Value

JSONDocumentValueFromBytes makes JSONDocument value from bytes

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func JSONValue

func JSONValue(v string) Value

func JSONValueFromBytes

func JSONValueFromBytes(v []byte) Value

JSONValueFromBytes makes JSON value from bytes

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func ListItems

func ListItems(v Value) ([]Value, error)

ListItems returns list items from abstract Value

func ListValue

func ListValue(vs ...Value) Value

func NullValue

func NullValue(t Type) Value

func Nullable

func Nullable(t Type, v interface{}) Value

func NullableBoolValue

func NullableBoolValue(v *bool) Value

func NullableBytesValue

func NullableBytesValue(v *[]byte) Value

func NullableBytesValueFromString

func NullableBytesValueFromString(v *string) Value

func NullableDateValue

func NullableDateValue(v *uint32) Value

func NullableDateValueFromTime

func NullableDateValueFromTime(v *time.Time) Value

func NullableDatetimeValue

func NullableDatetimeValue(v *uint32) Value

func NullableDatetimeValueFromTime

func NullableDatetimeValueFromTime(v *time.Time) Value

func NullableDoubleValue

func NullableDoubleValue(v *float64) Value

func NullableDyNumberValue

func NullableDyNumberValue(v *string) Value

func NullableFloatValue

func NullableFloatValue(v *float32) Value

func NullableInt16Value

func NullableInt16Value(v *int16) Value

func NullableInt32Value

func NullableInt32Value(v *int32) Value

func NullableInt64Value

func NullableInt64Value(v *int64) Value

func NullableInt8Value

func NullableInt8Value(v *int8) Value

func NullableIntervalValue

func NullableIntervalValue(v *int64) Value

NullableIntervalValue makes Value which maybe nil or valued

Deprecated: use NullableIntervalValueFromMicroseconds instead. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated

func NullableIntervalValueFromDuration

func NullableIntervalValueFromDuration(v *time.Duration) Value

func NullableIntervalValueFromMicroseconds

func NullableIntervalValueFromMicroseconds(v *int64) Value

func NullableJSONDocumentValue

func NullableJSONDocumentValue(v *string) Value

func NullableJSONDocumentValueFromBytes

func NullableJSONDocumentValueFromBytes(v *[]byte) Value

func NullableJSONValue

func NullableJSONValue(v *string) Value

func NullableJSONValueFromBytes

func NullableJSONValueFromBytes(v *[]byte) Value

func NullableStringValue

func NullableStringValue(v *[]byte) Value

NullableStringValue

Deprecated: use NullableBytesValue instead. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated

func NullableStringValueFromString

func NullableStringValueFromString(v *string) Value

func NullableTextValue

func NullableTextValue(v *string) Value

func NullableTimestampValue

func NullableTimestampValue(v *uint64) Value

func NullableTimestampValueFromTime

func NullableTimestampValueFromTime(v *time.Time) Value

func NullableTzDateValue

func NullableTzDateValue(v *string) Value

func NullableTzDateValueFromTime

func NullableTzDateValueFromTime(v *time.Time) Value

func NullableTzDatetimeValue

func NullableTzDatetimeValue(v *string) Value

func NullableTzDatetimeValueFromTime

func NullableTzDatetimeValueFromTime(v *time.Time) Value

func NullableTzTimestampValue

func NullableTzTimestampValue(v *string) Value

func NullableTzTimestampValueFromTime

func NullableTzTimestampValueFromTime(v *time.Time) Value

func NullableUTF8Value

func NullableUTF8Value(v *string) Value

func NullableUUIDValue

func NullableUUIDValue(v *[16]byte) Value

func NullableUint16Value

func NullableUint16Value(v *uint16) Value

func NullableUint32Value

func NullableUint32Value(v *uint32) Value

func NullableUint64Value

func NullableUint64Value(v *uint64) Value

func NullableUint8Value

func NullableUint8Value(v *uint8) Value

func NullableYSONValue

func NullableYSONValue(v *string) Value

func NullableYSONValueFromBytes

func NullableYSONValueFromBytes(v *[]byte) Value

func OptionalValue

func OptionalValue(v Value) Value

func SetValue

func SetValue(vs ...Value) Value

func StringValue

func StringValue(v []byte) Value

StringValue returns bytes value

Deprecated: use BytesValue instead. Will be removed after Oct 2024. Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated

func StringValueFromString

func StringValueFromString(v string) Value

StringValueFromString makes String value from string

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func StructValue

func StructValue(opts ...StructValueOption) Value

func TextValue

func TextValue(v string) Value

func TimestampValue

func TimestampValue(v uint64) Value

TimestampValue makes ydb timestamp value from microseconds since Epoch

func TimestampValueFromTime

func TimestampValueFromTime(t time.Time) Value

TimestampValueFromTime makes Timestamp value from time.Time

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func TupleItems

func TupleItems(v Value) ([]Value, error)

TupleItems returns tuple items from abstract Value

func TupleValue

func TupleValue(vs ...Value) Value

func TzDateValue

func TzDateValue(v string) Value

TzDateValue makes TzDate value from string

func TzDateValueFromTime

func TzDateValueFromTime(t time.Time) Value

TzDateValueFromTime makes TzDate value from time.Time

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func TzDatetimeValue

func TzDatetimeValue(v string) Value

TzDatetimeValue makes TzDatetime value from string

func TzDatetimeValueFromTime

func TzDatetimeValueFromTime(t time.Time) Value

TzDatetimeValueFromTime makes TzDatetime value from time.Time

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func TzTimestampValue

func TzTimestampValue(v string) Value

TzTimestampValue makes TzTimestamp value from string

func TzTimestampValueFromTime

func TzTimestampValueFromTime(t time.Time) Value

TzTimestampValueFromTime makes TzTimestamp value from time.Time

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func UTF8Value

func UTF8Value(v string) Value

func UUIDValue

func UUIDValue(v [16]byte) Value

func Uint16Value

func Uint16Value(v uint16) Value

func Uint32Value

func Uint32Value(v uint32) Value

func Uint64Value

func Uint64Value(v uint64) Value

func Uint8Value

func Uint8Value(v uint8) Value

func VariantValue

func VariantValue(v Value) (name string, idx uint32, _ Value, _ error)

VariantValue returns variant value from abstract Value

func VariantValueStruct

func VariantValueStruct(v Value, name string, variantT Type) Value

func VariantValueTuple

func VariantValueTuple(v Value, i uint32, variantT Type) Value

func VoidValue

func VoidValue() Value

func YSONValue

func YSONValue(v string) Value

func YSONValueFromBytes

func YSONValueFromBytes(v []byte) Value

YSONValueFromBytes makes YSON value from bytes

Warning: all *From* helpers will be removed at next major release (functional will be implements with go1.18 type lists)

func ZeroValue

func ZeroValue(t Type) Value

Source Files

cast.go types.go value.go

Version
v3.73.0
Published
Jun 6, 2024
Platform
linux/amd64
Imports
11 packages
Last checked
27 minutes ago

Tools for package owners.