rust-unsafe-ffi
Installation
SKILL.md
Rust 不安全代码与 FFI
基于 The Rust Programming Language ch 19.1-19.2 与 The Rustonomicon。
Capability Boundaries
✅ 强项
- unsafe 五种超能力(裸指针解引用、unsafe fn/方法、可变静态变量、unsafe trait、union 字段)
- 裸指针(*const T、*mut T、NonNull、偏移运算 add/offset、地址运算)
- FFI(extern "C" ABI、#[link]、#[no_mangle]、C 类型映射、回调函数)
- 内存操作(MaybeUninit、ManuallyDrop、transmute、offset_of!、size_of/align_of)
- 类型布局控制(#[repr(C)]、#[repr(transparent)]、#[repr(align)]、#[repr(packed)]、#[repr(i32)])
- Pin(自引用类型安全约束、Pin<Box>、Pin<&mut T>)
- 全局分配器自定义(#[global_allocator] + GlobalAlloc trait)
- 不安全 trait 手动实现(Send、Sync)
⚠️ 前置要求
- 深入理解 Rust 所有权与借用规则(rust-1.93)