/
githubmirror
/
ydb-go-sdk
Обзор
Документация
Войти
/
githubmirror
/
ydb-go-sdk
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
internal/query/scanner/struct_options.go
40 строк
1 KB
Aleksey Myasnikov
ScanStruct implementation
04 мар 2024, 21:19
04 мар 2024, 21:19
d358ec7
Код
Авторство
О чём код?
package scanner type ( ScanStructOption interface { applyScanStructOption(settings *scanStructSettings) } tagName string allowMissingColumnsFromSelect struct{} allowMissingFieldsInStruct struct{} ) var ( _ ScanStructOption = tagName("") _ ScanStructOption = allowMissingColumnsFromSelect{} _ ScanStructOption = allowMissingFieldsInStruct{} ) func (allowMissingFieldsInStruct) applyScanStructOption(settings *scanStructSettings) { settings.AllowMissingFieldsInStruct = true } func (allowMissingColumnsFromSelect) applyScanStructOption(settings *scanStructSettings) { settings.AllowMissingColumnsFromSelect = true } func (name tagName) applyScanStructOption(settings *scanStructSettings) { settings.TagName = string(name) } func WithTagName(name string) tagName { return tagName(name) } func WithAllowMissingColumnsFromSelect() allowMissingColumnsFromSelect { return allowMissingColumnsFromSelect{} } func WithAllowMissingFieldsInStruct() allowMissingFieldsInStruct { return allowMissingFieldsInStruct{} }