Valery
нету ей алтернативы
Valery
рок стар программер вне классификаций
Valery
все это знают
Victor
а рок-стар программер должен нюхать кокс и пялить тёлок на рабочем месте?...
G72K
Сеньйор это тот, кто может объяснить что он делает.
Valery
а вот чтобы среднее быдло как то выровнять в метриках, приходится классифицировать, не то, что звание сениора к чему-то кого-то обязывало
Valery
если я долблю кокс и пялю телок на рабочем месте и могу обьяснить что я именно это и делаю, то я помидор или рок стар?
Valery
@cantrell лычки на себя все сами навешивают
Valery
это скорее абстрактное описание вакансии, нежели человека ее заполняющего
Valery
типа будешь сениором, будем тебя ебстить за косяки, а с джуна чего взять-то, он смотри какой хорошенький
Valery
а мидл, уже не хорошенький, но ему еще нет 18, поэтому ебстить - статья
Anonymous
Объясните мне, почему все больше вещей перемещают в core?
Nikita
А как нынче модно NON_BLOCKING IO делвть?
Маjко
tokio
Nikita
Маjко
mio если хочется руками
Маjко
Nikita
Маjко
https://docs.rs/tokio-pty-process/0.1.0/tokio_pty_process/struct.AsyncPtyMaster.html
Маjко
Вообще тебе нужны реализации AsyncRead/AsyncWrite
Маjко
Которые есть по сути для всего Read/Write
Маjко
https://docs.rs/tokio-io/0.1.6/tokio_io/trait.AsyncRead.html
Маjко
impl<T: AsyncRead> AsyncRead for BufReader<T>
Nikita
походу проще будет —навернуть говна— взять mio
Маjко
👍
Anonymous
Где почитать про trait objects?
Anonymous
Не совсем понимаю их
კაცი
Anonymous
Не хватило
Маjко
К тому же я не знаю как оно делается в новом tokio, tokio-io то депрекейтят
Nikita
почему то весь неблокирующий IO в расте завязан на сокеты, типа char device это какая-то несуществующая ебанина
Viknet
Не совсем понимаю их
trait object - это реализация динамической диспетчеризации.
В рантайме это fat pointer содержащий указатель на данные и указатель на vtable трейта для конкретного типа.
Маjко
Nikita
Маjко
Ну что больше используется, очевидно.
Поддержка всего остального есть, просто меньше удобных обвязок
Nikita
mio пока ближе всего к тому что надо
պլհկ
պլհկ
https://docs.rs/tokio/0.1.7/tokio/prelude/trait.AsyncRead.html
Ned
товарищи, а есть ли в расте conditional compilation в каком-либо виде?
-__-
#[cfg] есть (https://doc.rust-lang.org/beta/reference/attributes.html#conditional-compilation)
Anonymous
>conditional compilation
Ты про директивы предпроцессора?
Αλεχ
я думаю он про contional compilation
Ned
Ned
я да, про conditional compilation, чтобы делать кросс-платформенные приложения или конфигурацию при сборке
Anonymous
Только #[cfg]
Αλεχ
Ну #cfg это и е сть оно
Αλεχ
вот например у меня условно под винду и линь: https://github.com/nebgnahz/cv-rs/blob/master/build.rs
Alexander
Вопрос: а RLS сам по себе такой неторопливый или это только на win?
պլհկ
везде
Αλεχ
Compiling tokio-tcp v0.1.0
Compiling tokio-udp v0.1.0
Compiling tokio v0.1.7
Compiling tokio-core v0.1.17
thread 'main' panicked at 'miri allocation never successfully created', libcore\option.rs:914:5
stack backtrace:
error: internal compiler error: unexpected panic
Αλεχ
найс
Alexander
А есть смысл левнуть обратно на racer или он уже не живой совсем и подсвечивать ничего не умеет?
Alexey
Ребят, в расте есть дебаггеры? Где-то замкнулся в бесконечный круг, а гипнотизировать код не хочется, да и не помогает
Nikita
gdb
Αλεχ
Alexey
Спасибо
Αλεχ
если на винде, ставь гнутый тулчейн
Αλεχ
в msvc дебаггер не работает
Alexey
Berkus
Berkus
Αλεχ
Αλεχ
А вот эту ошибку кто-нибудь может объяснить
Αλεχ
error[E0599]: no associated item named `Post` found for type `hyper::Method` in the current scope
--> src\telegram_client.rs:30:19
|
30 | self.send(Method::Post, &url).send()
| ^^^^^^^^^^^^ associated item not found in `hyper::Method`
Αλεχ
я ж блин не слепой
Αλεχ
impl Method {
/// GET
pub const GET: Method = Method(Get);
/// POST
pub const POST: Method = Method(Post);
Cat
's/Post/POST/g' ?
Αλεχ
лол
Αλεχ
они на капс перешли в новой версии
Αλεχ
спасибо
Cat
так получается ты слепой таки? /thread
Αλεχ
При этом энум оставили маленькими
#[derive(Clone, PartialEq, Eq, Hash)]
enum Inner {
Options,
Get,
Post,
Put,
Delete,
Head,
Trace,
Connect,
Patch,
// If the extension is short enough, store it inline
ExtensionInline([u8; MAX_INLINE], u8),
// Otherwise, allocate it
ExtensionAllocated(Box<[u8]>),
}
Αλεχ
Genius
Αλεχ
Αλεχ
дада, константы бюольшие