Mark
serde?
Αλεχ
с бонусным условием: должно работать с alloc::String в no_std
Αλεχ
serde?
есть serde_json и serde_json_core
Αλεχ
первый не умеет в no_std, второй - в строки
kitsu
100% != 100%
какие-то флоаты пошли
Cuno
первый не умеет в no_std, второй - в строки
Что мешает сериализовать в вектор и конвертнуть вектор в строку? Строка это же по сути Vec<u8>
kalloc
)))
Αλεχ
> This is explicitly out of scope > > - Anything that involves dynamic memory allocation > - Like the dynamic Value type
Αλεχ
понимаешь ли
Loyd
Cuno
вектора он тоже не умеет
https://japaric.github.io/serde-json-core/serde_json_core/ser/index.html А это шо?
Pavel
Чта?
немного JS мира
Αλεχ
https://pastebin.com/6zH1zB0y
Cuno
https://japaric.github.io/serde-json-core/heapless/struct.Vec.html А, это другой вектор, лол.
Cuno
Да, тут грустно получается. Странно что to_writer нету.
Mykyta
немного JS мира
а причем js к float?
kalloc
Чта?
не, 100% покрытия не 100% покрытия
kalloc
@kitsu должен это знать
kalloc
CFG и всё такое
Αλεχ
автор serde_json говорят "нам не нужен no_std, мы мержить ПР не будем" автор serde_json_core говорит "нам не нужен аллокатор, мержить ПР не будем"
Αλεχ
сука
Αλεχ
реально игрушечный язык
Αλεχ
да походу придется
Αλεχ
мне проще было бы в serde_json запилить no_std, там тривиальные изменения
Ignat
неужто все такие фанатики?
в гугле вообще при собеседовании дают общие шарады на знание алгоритмов, а потом, если решили, что человек попался хороший, матчат ему проект, при этом технические собеседования случаются крайне редко — ребята стараются унифицировать технологии настолько, чтобы %lang1name%-обезьяна спокойно могла перейти в команду, разрабатывающую на %lang2name%. Очевидно, у руста для такого подхода слишком высок порог входа.
Ignat
сам написал
Ignat
(за весь гугл офк сказать не могу, YMMV)
Anonymous
Все кто пишут на расте значительно умнее чем средний программист. Да ребзя?
Все кто пишут на расте значительно беднее чем средний программист. Да ребзя?
Ignat
У плюсов тоже порог входа высок, но их таки в гугле юзают.
гугловый стайлгайд всеми силами пытается это скрыть
Alexander
У плюсов тоже порог входа высок, но их таки в гугле юзают.
Гугл начался с плюсов - они теперь при всём желании от них не избавятся.
Ignat
у них неиронично написано, что эксепшоны — это плоха, потому что тогда приходится RAII использовать
Ignat
(в числе прочего, конечно, но тем не менее)
Αλεχ
Пришли pr
автор в целях либы написал "но аллок"
Αλεχ
я не контрибучу обычно то, что с высокой вероятностью нахуй пошлют
Αλεχ
как раз наоборот - я задал вопрос, рвать ли жопу, и во взрослом serde мне сказали пшлнх
Αλεχ
а в маленьком автор ваще походу умер
Αλεχ
Some errors occurred: E0369, E0599. For more information about an error, try rustc --explain E0369. error: failed to compile clippy v0.0.212, intermediate artifacts can be found at C:\Users\Alex\AppData\Local\Temp\cargo-installXidcmv Caused by: Could not compile clippy_lints. To learn more, run the command again with --verbose.
Αλεχ
vlf
Αλεχ
вчера собиралось, сегодня уже нет
Αλεχ
да пофиг, как компонент поставил rustup component add clippy-preview --toolchain=nightly
Αλεχ
вроде даже работает
Αλεχ
Max
http://play.rust-lang.org/?gist=0fc32fec74c46be694cc29d930787cd4&version=stable&mode=debug&edition=2015 А реально ли засунуть трейты с разными associated items в один vec?
Max
Ну там так и есть. Но всё равно не работает
Ivan
а не, я видимо неправильно понял вопрос
Ivan
игнорируй всё, что я сказал 8)
Vladimir
тебе нужен impl Trait для трейтов, но его нет
Маjко
тебе нужен impl Trait для трейтов, но его нет
Не поможет же, тут динамика нужна
Loyd
Иначе хер там
Loyd
Ломается
Loyd
Сука
Loyd
Постоянно
Vladimir
Не поможет же, тут динамика нужна
ну в идеале бы помогла. похер что возвращаешь главное импл трейт
Vladimir
а так наверное только извращения типа http://play.rust-lang.org/?gist=89c4e30f6847cd0858cfc49e5b89eb58&version=stable&mode=debug&edition=2015
red75prime
Почему извращения? Компилятор откуда узнает сколько места на стеке выделять под ассоциированный тип и какого типа будет результат, если он неизвестен статически?
Vladimir
ну окей, аргумент, а извращения потому что лапша выходит. Но как в си живут массивы переменной длины?
Max
Ок, спасибо Просто буду юзать serde_json::Value Даже sqlite (точнее rusqlite) может в него Хоть и не ПЕРФОМАНС
Αλεχ
но он уже как компонент бинари качает
Αλεχ
так что норм
Loyd
Хм. должно быть норм тогда