An attribute for deprecation
If you're writing a library, and you'd like to deprecate something, you canuse the deprecated
attribute:
#![allow(unused_variables)]
fn main() {
#[deprecated(
since = "0.2.1",
note = "Please use the bar function instead"
)]
pub fn foo() {
// ...
}
}
This will give your users a warning if they use the deprecated functionality:
Compiling playground v0.0.1 (file:///playground)
warning: use of deprecated item 'foo': Please use the bar function instead
--> src/main.rs:10:5
|
10 | foo();
| ^^^
|
= note: #[warn(deprecated)] on by default
Both since
and note
are optional.
since
can be in the future; you can put whatever you'd like, and what's put inthere isn't checked.