Size: a a a

2021 April 17

D

Dima in rust_offtopic
Она же приватная, втф
источник

EG

Emmanuel Goldstein in rust_offtopic
Это просто такая же «документация через синтаксис» как unsafe-блоки внутри unsafe-функций
источник

EG

Emmanuel Goldstein in rust_offtopic
Которые типа хорошая практика
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
как раз в этом я не вижу смысла
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
если все ансейф места в блоках то функцию помечать не очень надо
источник

EG

Emmanuel Goldstein in rust_offtopic
Надо
источник

EG

Emmanuel Goldstein in rust_offtopic
Это два разных месседжа
источник

D

Dima in rust_offtopic
В этом есть смысл, ну коммон
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
ну типа "мы ансейф ПАТАМУШТА вот". Ну хз
источник

EG

Emmanuel Goldstein in rust_offtopic
unsafe-функция: вызывающий обязан проверить констрейнты
unsafe-блок: я проверил констрейнты
источник

D

Dima in rust_offtopic
Опять Гольдштейн правду говорит)
источник

EG

Emmanuel Goldstein in rust_offtopic
Т. е.
/// SAFETY: must be fully initialized by this point
pub unsafe fn foobar(&self)  -> i32 {
    // SAFETY: this pointer is never null in fully-initialized object
   unsafe { *self.ptr_field }
}
источник

EG

Emmanuel Goldstein in rust_offtopic
ИМХО, то, что SAFETY-комментарий это комментарий, а не часть синтаксиса, это ранний проёб Rust
источник

EG

Emmanuel Goldstein in rust_offtopic
pub unsafe "must be fully initialized by this point" fn foobar(&self) -> i32 {
   unsafe "never null in fully-initialized object" {
       *self.ptr_field
   }
}
источник

EG

Emmanuel Goldstein in rust_offtopic
Сейчас это даже не специальный синтаксис, как док комменты, а просто конвенция
источник

D

Dima in rust_offtopic
Это все сложно, в моем понимании  одно уб отличается от другого уб, не я это придумал, но таков мир
источник

EG

Emmanuel Goldstein in rust_offtopic
И если для функций есть хотя бы линт missing_safety_doc, то никакой проверки на то, что у unsafe-блоков есть описания, нету (насколько мне известно)
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
тлдр: "так можно, но мне не нравится и на ревью я бы не пропустил"
источник

D

Dima in rust_offtopic
Я конечно никто, но Ральф иногда перегибает палку кмк, в том плане что он всех заставляет всех. делать "правильно", но при этом нет четкого определения что такое "правильно"
источник