Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

3 формы корректного Rust

  • Функции, написанные только на безопасном Rust
  • Функции, содержащие небезопасные блоки, которые невозможно использовать неправильно
  • Небезопасные функции, предусловия безопасности которых задокументированы
This slide should take about 5 minutes.
  • Мы хотим писать корректный код.
  • Корректный код может иметь только следующие формы:
    • безопасные функции, не содержащие небезопасных блоков
    • безопасные функции, полностью инкапсулирующие небезопасные блоки, то есть вызывающему коду не нужно о них знать
    • небезопасные функции, которые содержат небезопасные блоки, но не инкапсулируют их и перекладывают бремя доказательства на вызывающий код
  • Бремя доказательства
    • безопасные функции только на безопасном Rust → компилятор
    • безопасные функции с небезопасными блоками → автор функции
    • небезопасные функции → вызывающий код функции