Stanislav
Все, методом научного тыка разобрался! :)
Zver
Не знает никто?(
Знают. Разуказателевать надо. А так сделайте слайс не указателем и не мучайтесь.
Nik
и да, слайс указателем передавать бессмысленно, он и так указатель
Andrey
задолбал case sensetive. Поле в структуре FOO, в файле FOO: - не анмаршалит. Сделаю лоукейс в yaml фале - анмаршалит
https://godoc.org/gopkg.in/yaml.v2#Marshal : "nmarshalled using the field name lowercased as the default key. Custom keys may be defined via the "yaml" name in the field tag"
Andrey
указывайте поле в теге
Andrey
https://github.com/go-yaml/yaml/issues/123
Nik
указывайте поле в теге
Если анмаршалю в структуру из библиотеки - тегов я не натыкаю
Andrey
сделайте промежуточную структуру.
Nik
И то и другое зло
Nik
Прям вот совсем
🄽🄸🄺🄸🅃🄰
товарищи, а как правильно обнулять буфер самописного writer? не знаю правильно ли вопрос сформуллирован, но суть в то что написал свою имплементацию io.writer , а он в луупе аккумулирует прихоящие строки
🄽🄸🄺🄸🅃🄰
может не там ищу конечно
🄽🄸🄺🄸🅃🄰
но все же, подскажите кто что знает об этом)
Zver
И то и другое зло
Либо анмарлите в map[interface{}]interface{}, а из него заполняйте структуру.
Zver
Та же промежуточная структура.
Зато автоматически все будет.
🄽🄸🄺🄸🅃🄰
lf
🄽🄸🄺🄸🅃🄰
да
🄽🄸🄺🄸🅃🄰
образуется слайс
🄽🄸🄺🄸🅃🄰
а он не нужен
🄽🄸🄺🄸🅃🄰
тобишь, чувствую что в буффере он сохраняет вхождения, и пытаюсь нацти как его чистить
🄽🄸🄺🄸🅃🄰
сейчас читаю про reset и Flush методы, но это для Bufio...
🄽🄸🄺🄸🅃🄰
любой рекомендации буду очень сильно благодарен
Artem
https://stackoverflow.com/questions/16971741/how-do-you-clear-a-slice-in-go
🄽🄸🄺🄸🅃🄰
Так это просто слайс? Как к нему обратиться
🄽🄸🄺🄸🅃🄰
У меня просто метод реализующий интерфейс. Я слайс сам не пополняю...
Daniel
если вы метод создали - вся остальная структура тоже ваша
Daniel
а раз ваша - вым и рулить очисткой
Artem
У меня просто метод реализующий интерфейс. Я слайс сам не пополняю...
Я тогда не очень понял про слайс. Я так понял, что есть некая реализация writer и там идет наполнение слайса (возможно промежуточного). Если это так, то... как же получается что >Я слайс сам не наполняю... ?
Kirill
Зачем?(
Anonymous
в связи с чем изменения?)
🏁Александр
предлагаю сделать такой же хомячка как на конкуренте, только в другуо сторону. 🙂
🏁Александр
отзеркалировать тупо
Dmitry
🏁Александр
Лул
а чо?
🏁Александр
будет клево
Kirill
в связи с чем изменения?)
Указ №123 от 27 марта 2018
Kirill
а чо?
Ну да
🏁Александр
можно по вертикали отзеркалить, будет вообще 🙂
Zver
Траур.
🏁Александр
мне кажется как то поздновато
🏁Александр
он вчера был
Kirill
он вчера был
Сегодня всероссийский траур
Zver
По стране сегодня. Но уже конец дня.
Kirill
По стране сегодня. Но уже конец дня.
Извините, раньше не успел.
Anonymous
http://www.redstar.ru/index.php/component/k2/item/36667-ukaz-prezidenta-rossijskoj-federatsii
🏁Александр
честно говоря можете кидать в меня камни, но не вижу смысла менять аватарку. Даже для траура. Людей это не вернет
Kirill
+
Anonymous
за детей обидно
Anonymous
из них могли бы быть гоферы мирового уровня
Anonymous
😔
Zver
Давайте о чем-нибудь другом.
🏁Александр
"В мире каждый день умирает приблизительно 150 000 человек"
Constantine️
да бля )
Constantine️
Саша нарушил тишину )
Constantine️
Козулю в чат скину
Constantine️
https://twitter.com/vkozulya/status/978928107494236160
Anonymous
джентельмены, подскажите, чем отличаются горутины от, например, системных потоков, процессов и т.д. ?
🏁Александр
потому что это лицемерство, никто даже не вспомнит тех 100 человек в день (включая детей), погибающих в дтп (В ДЕНЬ!) например. Но тут конечно "помним, скорбим", хрена с два.
Constantine️
сворачивайте
🏁Александр
ну пояснили бы разницу... во флуде
Zver
джентельмены, подскажите, чем отличаются горутины от, например, системных потоков, процессов и т.д. ?
Горутины это кооперативная многозадачность. Пока она не отдаст явно или не явно управление в шедулер, она будет выполнятся монопольно в рамках одного потока приложения.
🄽🄸🄺🄸🅃🄰
Может код покажете тогда? Print чего, например?
Метод Func(ww Writer) write(w []byte) (n int, err error){ Fmt.printf("%s", w) return len(w), nil }
Zver
О, спасибо. Про шедулер первый раз слышу, но буду копаться)
Шедулер управляет горутинками. Неаявная передача ему управления происходит, когда происходит обращение к каналам, мютексам, системные вызовы (вроде бы как). В этот момент, пока горутина в ожидании, выполнение переходит на другую горутину, которая была в ожидании данных с канала или освобождения мютекса. Ну это в общем.
Artem
Метод Func(ww Writer) write(w []byte) (n int, err error){ Fmt.printf("%s", w) return len(w), nil }
Так, а теперь пример использования. Вот мой "тест": package main import "fmt" type Writer struct { } func(ww Writer) Write(w []byte) (n int, err error){ fmt.Printf("%s\n", w) return len(w), nil } func main() { arr := []string{"test", "test1", "test2"} w := &Writer{} for _, item := range arr { rr, _ := w.Write([]byte(item)) fmt.Println(rr) } } вывод: test 4 test1 5 test2 5
Artem
т.е. все работает как и должно, либо я опять не понимаю проблемы :)