/
githubmirror
/
ydb-go-sdk
Обзор
Документация
Войти
/
githubmirror
/
ydb-go-sdk
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
internal/query/scanner/data.go
46 строк
1014 B
Aleksey Myasnikov
refactoring for pg2ydb project (#1846)
14 авг 2025, 18:55
Не верифицирован
14 авг 2025, 18:55
c3e1bb7
Код
Авторство
О чём код?
package scanner import ( "fmt" "github.com/ydb-platform/ydb-go-genproto/protos/Ydb" "github.com/ydb-platform/ydb-go-sdk/v3/internal/value" "github.com/ydb-platform/ydb-go-sdk/v3/internal/xerrors" ) type Data struct { columns []*Ydb.Column values []*Ydb.Value } func NewData(columns []*Ydb.Column, values []*Ydb.Value) *Data { return &Data{ columns: columns, values: values, } } func (d Data) seekByName(name string) (value.Value, error) { for i := range d.columns { if d.columns[i].GetName() == name { return value.FromYDB(d.columns[i].GetType(), d.values[i]), nil } } return nil, xerrors.WithStackTrace(fmt.Errorf("'%s': %w", name, ErrColumnsNotFoundInRow)) } func (d Data) seekByIndex(idx int) value.Value { return value.FromYDB(d.columns[idx].GetType(), d.values[idx]) } func (d Data) Values() []value.Value { values := make([]value.Value, len(d.columns)) for idx := range values { values[idx] = value.FromYDB(d.columns[idx].GetType(), d.values[idx]) } return values }