Unsafe Rust для FFI: безопасные обёртки над C-библиотеками без утечек памяти

Rust хорош своей безопасностью, но рано или поздно приходится выйти за пределы уютного мирка borrow checker. Нужно подключить проверенную C-библиотеку, использовать системный API или просто переиспользовать существующий код. И тут начинается unsafe.
Правильно приготовленный unsafe позволяет создать безопасный API поверх небезопасного кода, сохранив все гарантии Rust для пользователей библиотеки.
Разберём, как писать FFI-обёртки, которые не подтекают и не падают.


















