我發現Can I mark a function as deprecated?,在我自己的箱子使用它:爲外部用戶棄用,但允許我嗎?
pub enum FooParams {
#[deprecated(since = "0.0.1", note = "use `FooParams::New` instead")]
Old,
New,
}
pub struct Foo;
impl Foo {
pub fn new(p: FooParams) -> Foo {
match p {
FooParams::Old => {}
FooParams::New => {}
}
Foo
}
}
這適用於外包裝箱及警告他們不要使用FooParams::Old
。 它也適用於我的箱子,產生惱人的警告。有什麼辦法可以禁用這個警告嗎?
我試過,但警告仍然存在:
#[allow(deprecated)]
FooParams::Old => {}
我不認爲將屬性附加到表達式(或子表達式部分)當前在Rust中執行任何操作。你是否嘗試過將'#[allow(deprecated)]'屬性添加到函數中? –
@WesleyWiser它的工作原理,但真正的功能使用來自其他板條箱的代碼,它抑制了它們關於棄用的警告嗎? – user1244932