Alexey
А ещё лучше – посмотрели бы документацию сторонней либы :) Вряд ли она просто так возвращает пустые интерфейсы
Slach
fmt.Printf("BLA1 %v\n", l)
fmt.Printf("BLA2 %s\n", l)
fmt.Printf("BLA3 %T\n", l)
fmt.Printf("BLA4 %#v\n", l)
выдает
BLA1 [[91 49 32 50 32 51 93]]
BLA2 [[1 2 3]]
BLA3 []interface {}
BLA4 []interface {}{[]uint8{0x5b, 0x31, 0x20, 0x32, 0x20, 0x33, 0x5d}}
чето как то все еще сложнее
ну вот как мне этот самый []uint8 (он же []byte)
конветнуть это в строковый слайс?
engelbart
switch aaa.(type)
Michael
Кто-то так считает. ну его право. ИМХО, это не так.
Дмитрий
ребята, а есть объяснение тому, что если я делаю приведение типов string() для массива байтов, и для каждого байта в отдельности с конкатенацией плюсом, то на выходе я получаю разные результаты для непечатных символов?
Sheldhur
кодировка
Sheldhur
мб
Mike
или потому что у тебя там юникод и некоторые символы больше байта?
Дмитрий
ну да, результат как раз получается из-за разной кодировки, но байты то передаются одни и те же 0xd8 (не помню сейчас уже точно код) если конвертировать в составе массива байтов превращается в \xd8 а если просто отдельный байт конвертировать, то получается \u00d8
Oleg
Ну тк \xd8 == \u00d8.
Другая проблема, что d8 - это не отдельный символ, а часть многобайтового символа. Как уже написали выше.
Дмитрий
равно, если сравнивать строковыми функциями, а если побайтово, то разные
Дмитрий
var test1 [1]byte
var test2 byte
test1[0]=141
test2=141
fmt.Println(strconv.Quote(string(test1[:1])))
fmt.Println(strconv.Quote(string(test2)))
Дмитрий
по сути я и в первом и втором случае конвертирую только один байт, а результаты разные
Дмитрий
вопрос мой в том, для чего это так задумано?
Slava
Как думаете какая разница между массивом байт и байтом?
Mike
*прыгает на месте и поднимает руку как гермиона* тип?
Anonymous
По поводу "без аллокаций". Преждевременная оптимизация - зло.
Constantine️
ты просто не умеешь
Мерль
https://github.com/golang/go/wiki/CompilerOptimizations
Roman
А кто делал exporter для prometheus? Как обновлять метрики при обращении к /metrics, а не по таймеру например? Что-то не гуглится.
Andrey
Всем привет, помогите с регуляркой в go, на перле у меня все ок, в го чет не але...
r_port, _ := regexp.Compile(`Ethernet.*\/(\d+)`)
snr_port := r_port.FindString(sw.Port)
тестовая строка Ethernet1/0/10
Vladimir
Andrey
вроде решил, thnx)
engelbart
patter: "/" это именованные параметры?
Aleksandr
?
engelbart
про скрин выше handlefunc(pattern :"/",....
Aleksandr
engelbart
я про сам синтаксис, не встречал раньше
engelbart
b = myfunc ( key: "blabla")
Aleksandr
engelbart
https://github.com/golang/go/issues/12296
engelbart
походу ж нету у нас named parameters
engelbart
а я по скрину подумал что есть
engelbart
ясно, сенкс
engelbart
а VERSION это у вас global var?
Aleksandr
engelbart
ой, код не ваш, сори
engelbart
Просто связи не увидел между горутиной metricupdate и handle
Alexey
Подскажите как переписать этот ужасный if else.
Нужно разное поведение в завимости от mediaFile.TypeContent — "video" или "photo" (NewVideoUpload или NewPhotoUpload)
Сейчас все сделано копинастом, потому, что я не могу как в каком нибудь Питоне просто переопределить file := tgbotapi.NewPhotoUpload в file := tgbotapi.NewVideoUpload 😔
gist — https://gist.github.com/targence/b86bcd920f247eb5bfab61bfe620e03c
Alexey
Aleksandr
через switch/case
Alexey
мб, фабрика.
UPD но правда пока она наверное не нужна.
Alexey
Alexey
через switch/case
ошибка что в одном, что в другом случае, что file не определен
Anonymous
а bot.Send что принимает, какой тип?
Alexey
а ределить его перд if я не могу =) потому что тип у него разный
Brown
file надо обьявить через var выше case
Anonymous
по-моему bot.send принимает интерфейс вот его и нужно как var file объявлять
Aleksandr
Alexey
Alexey
Alexey
Aleksandr
var file опреедели как тип, принмаемый bot.send
Aleksandr
Alexey
господа, может кто подскажет. Задача:
Мне нужно хранить порядок записей в бд, предположим у меня есть что-то типа директорий, в которых находится контент, необходимо хранить sequence каждого контента. Вариант по порядку хранить 1,2,3,4 сразу отпадает, т.к при смене позиции контента, необходимо обновлять все последующие эл. контента. Какой правильно хранить подобные записи?
Aleksandr
Alexey
Также думал про ступени с шагом по 10000 например, но опять-таки со временем две ед. выравниются
Alexey
поле order
и что поле order? почему не sequence?
Aleksandr
Aleksandr
Anonymous
Наверное, лучше Fileable
Alexey
ну да, всё верно, как хранить порядок. У меня например есть 100 записей, подвинули контент с 99 позиции на 50. Мне при этом обновлять 48 записей?)
Илья
да
Alexey
херня решение
Anonymous
делай с шагом, потом когда значения пересекутся обновляй