用途:帮助在 Rust 中判断何时需要显式生命周期标注,以及如何处理借用检查器无法推导输入输出引用关系的情况。
主要能力:覆盖三条省略规则(仅适用于函数与方法签名,类型定义不适用);区分 &'static T 与 T: 'static;说明 &mut T 在 T 上不变、&'a T 协变等型变规则;介绍 HRTB(for<'a>)、生命周期子类型 'a: 'b、NLL 借用作用域在最后一次使用处结束,以及 edition 2024 中 RPIT 默认捕获所有在作用域内泛型、需用 + use<...> 退出捕获的变化。
使用方式:先判断条目是否为持有引用的 struct/enum/union/trait,是则必须显式写生命周期;否则按省略规则判断函数输出是否可省略,不能省略时编译器报 E0106,需显式标注。迁移到 2024 edition 时可运行 cargo fix --edition 应用 impl_trait_overcaptures lint。
适用场景:编写或审查 Rust 函数、结构体签名,遇到 E0106、E0623、E0495、E0700、E0759 等生命周期相关错误,或需要理解省略、型变、HRTB 与 RPIT 捕获语义时。
限制:资料未提供该技能的安装命令、收费方式、平台支持与具体使用步骤;内容以规则与模式说明为主,实际编译行为以对应 Rust 版本和官方文档为准。