Size: a a a

2020 March 24

MN

Mykyta Nikitenko in Go-go!
Denis Dvornikov
ребят, кто-нибудь знает тул который сможет структуру выкинуть в stdout в формате декларации?
имею ввиду var yourObject = struct{Field1 string}{Field1: “value1”}
fmt.Sprintf(“#+v”, val)
источник

ВС

Владимир Столяров in Go-go!
Denis Dvornikov
как я вижу он не позволит мне это скопировать из консоли, вставить в переменную и использовать прям сейчас в тестах, верно?
Вообще должен, если правильно настроить formatter
источник

MN

Mykyta Nikitenko in Go-go!
Denis Dvornikov
как я вижу он не позволит мне это скопировать из консоли, вставить в переменную и использовать прям сейчас в тестах, верно?
Там есть метод Sdump() вроде, который строку возвращает
источник

DD

Denis Dvornikov in Go-go!
Владимир Столяров
Вообще должен, если правильно настроить formatter
благодарю, буду смотреть
источник

bK

bekaa Ku in Go-go!
источник

ИТ

Иван Т in Go-go!
Как по коду ascii вывести символ и наоборот?
источник

PF

Petr Filippov in Go-go!
источник

E

Edgar in Go-go!
Ребят, только вникаю в uber-zap, так что прошу не кидать помидоры, если не правильно его юзаю

Это нормально, что при log.Warn() он выплевывает ещё и стек?
источник

ИТ

Иван Т in Go-go!
Спасибо
источник

DP

Daniel Podolsky in Go-go!
Edgar
Ребят, только вникаю в uber-zap, так что прошу не кидать помидоры, если не правильно его юзаю

Это нормально, что при log.Warn() он выплевывает ещё и стек?
Регулируется
источник

ЕО

Евгений Омельченко in Go-go!
GoDenis
я про другой контекст использования. Я работаю с GORM, на вход подавая интерфейс
Рефлект ровно для этого и нужен
источник

DP

Daniel Podolsky in Go-go!
В смысле - можно задать, с каким уровнем стек добавляется
источник

E

Edgar in Go-go!
Daniel Podolsky
Регулируется
Понял, то есть можно настроить, чтобы делал это лишь в некоторых случаях?
источник

E

Edgar in Go-go!
Понял, благодарю
источник

G

GoDenis in Go-go!
Евгений Омельченко
Рефлект ровно для этого и нужен
это в ответ на предыдущее тому сообщение про методы, что интерфейсы нужны для методов
источник

ЕО

Евгений Омельченко in Go-go!
Смотрите, если у вас есть интерфейс, скрывающий разные структуры, то есть две возможности:
1. Вы пишите type switch и дальше сами разбираетесь с каждым типом
2. Вы юзаете рефлект

1 имеет смысл, если у вас небольшое количество структур скрыто может быть, а 2 в ином
источник

ЕО

Евгений Омельченко in Go-go!
Есть ещё вариант 3, который я изначально предложил, но не уверен, что gorm его умеет вообще: юзать map[string]interface{}
источник

G

GoDenis in Go-go!
Не, такое он не умеет
источник

G

GoDenis in Go-go!
Свитч тоже имхо не вариант, зачем вообще делать интерфейс если все равно свитч делаешь
источник

A

Anatoliy in Go-go!
GoDenis
Свитч тоже имхо не вариант, зачем вообще делать интерфейс если все равно свитч делаешь
что бы не лезть в рефлект который будет медленнее?
источник