Блог*
前往频道在 Telegram
Блог со звёздочкой. Много репостов, немножко программирования. Небольшое прикольное комьюнити: @decltype_chat_ptr_t Автор: @insert_reference_here
显示更多1 924
订阅者
无数据24 小时
+27 天
无数据30 天
帖子存档
1 925
Ах, кстати, сегодня три года исполнилось Блог*у. Только я и не знаю, что писать, ничего в голову не идёт
1 925
Repost from N/a
К 25 в моей жизни остались два типа ночных кошмаров: кто-то умер и заполнение документов
Откровенно говоря, я не уверена, какой страшнее
1 925
#prog #rust #c
В C принято для функций-компараторов в сортировке возвращать целое число, где отрицательное значение означает, что первый элемент меньше второго, положительное — что первый элемент больше второго, а ноль — чтj элементы равны. В Rust же для этих целей используют отдельный тип Ordering. Между ними очень просто конвертироваться.
Из C в Rust:
fn c_order_to_rust_order(o: c_int) -> Ordering {
o.cmp(&0)
}
Из Rust в C:
fn rust_order_to_c_order(o: Ordering) -> c_int {
o as c_int
}
Второе работает за счёт дискриминантов на вариантах Ordering, расставленных ещё до релиза Rust 1.0. Определение Ordering, если опустить аннотации, выглядит так:
#[repr(i8)]
pub enum Ordering {
Less = -1,
Equal = 0,
Greater = 1,
}
Неудивительно, что rust_order_to_c_order компилируется в единственный mov (возможно, с sign extension).1 925
Repost from ozkriff.games 🦀
# /r/rust: "Is Crypto No Longer Leading Industry for Rust?
tldr: kinda yes and it's great
https://reddit.com/r/rust/comments/zb0bw7/crypto_no_longer_the_leading_industry_for_rust
Not sure about the "leading industry" phrasing but cryptocurrency/bc-related jobs used to totally dominate the rusty job offerings and it was a common source of complaints. Glad to see that the trend is changing.
1 925
— А ты где работаешь?
— В Яндексе.
— А, в Яндекс.Еде)
— Да, я занимаюсь continuous delivery.
— Да мы поняли, что ты еду постоянно доставляешь.
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
