Matwey
А, значит через костыль
ozkriff🇺🇦
50на50 я бы сказал - https://doc.rust-lang.org/src/core/marker.rs.html#547
ozkriff🇺🇦
собственный реализовать нельзя только из-за ошибки с ни к чему не прикрепленным параметром:
error[E0392]: parameter `T` is never used
--> src/main.rs:1:26
|
1 | pub struct MyPhantomData<T: ?Sized>;
| ^ unused type parameter
|
= help: consider removing `T` or using a marker such as `std::marker::PhantomData
Matwey
А ошибка лечится через #[lang = phantom data] ?
Matwey
Понятно
Matwey
А как сделать C-style enum? У меня две возможных логических поззиции в enum, каждая из которых представима числовой константой
Matwey
Я хочу на определенном этапе константу достать.
Matwey
Это можно как-то сделать нативно, или толкьо через сравнения и функцию?
ozkriff🇺🇦
https://rustbyexample.com/custom_types/enum/c_like.html
Маjко
EnumVariant as {int}
ozkriff🇺🇦
да можно даже Number::Zero as _ писать, если компилятору понятен контекст приведения (если передаешь потом значение, допустим, в функцию, которая ждет конкретный числовой тип)
asteglor
asteglor
Как идея?
Маjко
պլհկ
приступай
ozkriff🇺🇦
гугл говорит что их уже сотни написано (но не на ржавчине, конечно) https://github.com/FruitieX/teleirc
asteglor
asteglor
Попробую вечерком
asteglor
ozkriff🇺🇦
если этот чат присоединить к главным англоязычным иркам - бота тут же забанят администраторы. куда ты присасываться еще хочешь?
asteglor
asteglor
Потом посмотрю, забанят или нет,
asteglor
Спрошу, как им такая идея
Loo
захуячь на русте автоматическую выкладку трэндингов новых по тэгу руст с гитхуба в этот чат
Loo
удобно будет
Loo
инфа соточка
Ilya
зачем? Русскоязычные разработчики или тут, или у нас в гиттере. Мост на англоязычные каналы не нужен, потому что бесполезен
Loo
предлагаю мост прям в личку матсакиса
Loo
удобно будет
Loo
Сережа
а можно сделать чтобы сообщения отсюда по емеилу отправлялись в камеди-клаб, чтобы они заимствовали искрометные шутки?
Vladimir
Vladimir
Причём в одну сторону
Vladimir
Принесем немного не код оф кондакной тематики в гиттер
Marat
https://play.rust-lang.org/?gist=cc752ef6cc22cf0b94f58f9c65f6e41f&version=stable
Marat
Подскажите почему закоментированный вариант не работает
Vladimir
У тебя в мап конкретный тип
Vladimir
А ты хочешь вернуть трейтобьект
Vladimir
https://play.rust-lang.org/?gist=9ad1e48deceb2d3b018ec2ed6c7cb0e5&version=stable
Marat
Да тупанул. Скорее бы уже стабилизировали impl trait
Vladimir
Импл не нужен
Vladimir
Для слабых
Anonymous
hello
Anonymous
I need a simple help
Anonymous
anyone can volunteer?
Filipp
Hi. Are you a spambot?
Anonymous
me?
Filipp
apparently not. Its just its a russian rust channel, so it was a little suspicious :) How can we help you?
Anonymous
i'm stuck in a websocket code
Anonymous
it is showing without any mistakes
Filipp
can you post it to playground or somewhere?
Anonymous
ok
Dårk
в тяжелой неравной борьбе с move closure я постиг разницу между Fn и FnOnce
Matwey
Господа, а как принято эффективно обращаться с динамическими массивами? Например, я хочу написать функцию которая выполняет сериализацию некоторых данных и хочет вернуть массив u8 неизвестной заранее длины. В C++ я бы наверное использовал итераторы для записи туда символов по очереди.
Oleg
.collect::<Vec<u8>>()?
Ilya
Dårk
Matwey
А аналог std::back_inserter как называется?
でゲソ
Matwey
Vladimir
Вектор тебе надо возвращать
Vladimir
А входные данные итератором можешь, если нужно
Ilya
Ну да, возвращаемый тип Vec<T>
Matwey
И сколько будет копирований памяти по догорое?
Dårk
многа. очень многа
Ilya
Только выделение памяти под финальный вектор, почему много?
Dårk
зато можно застримить в файл
Ilya
Итераторы ленивы, лишнего ничего не будет
Dårk
можно ж вернуть Read
Vladimir
И что будет твой рид
Dårk
будет буферизировать по пару мегабайт из итератора
Dårk
но не по одному байту, и не весь за раз
Vladimir
Зависит от того, что ему надо. Может ему слайс надо
Vladimir
Поток не понятное определение
Matwey
Мне надо что-то типа потока, да