resolve: Introduce a separate NonMacroAttrKind
for legacy derive helpers
This commit is contained in:
parent
e7ee4d66ce
commit
69894ce9ac
3 changed files with 21 additions and 20 deletions
|
@ -39,6 +39,9 @@ pub enum NonMacroAttrKind {
|
|||
Tool,
|
||||
/// Single-segment custom attribute registered by a derive macro (`#[serde(default)]`).
|
||||
DeriveHelper,
|
||||
/// Single-segment custom attribute registered by a derive macro
|
||||
/// but used before that derive macro was expanded (deprecated).
|
||||
DeriveHelperCompat,
|
||||
/// Single-segment custom attribute registered with `#[register_attr]`.
|
||||
Registered,
|
||||
}
|
||||
|
@ -370,7 +373,9 @@ impl NonMacroAttrKind {
|
|||
match self {
|
||||
NonMacroAttrKind::Builtin => "built-in attribute",
|
||||
NonMacroAttrKind::Tool => "tool attribute",
|
||||
NonMacroAttrKind::DeriveHelper => "derive helper attribute",
|
||||
NonMacroAttrKind::DeriveHelper | NonMacroAttrKind::DeriveHelperCompat => {
|
||||
"derive helper attribute"
|
||||
}
|
||||
NonMacroAttrKind::Registered => "explicitly registered attribute",
|
||||
}
|
||||
}
|
||||
|
@ -385,7 +390,9 @@ impl NonMacroAttrKind {
|
|||
/// Users of some attributes cannot mark them as used, so they are considered always used.
|
||||
pub fn is_used(self) -> bool {
|
||||
match self {
|
||||
NonMacroAttrKind::Tool | NonMacroAttrKind::DeriveHelper => true,
|
||||
NonMacroAttrKind::Tool
|
||||
| NonMacroAttrKind::DeriveHelper
|
||||
| NonMacroAttrKind::DeriveHelperCompat => true,
|
||||
NonMacroAttrKind::Builtin | NonMacroAttrKind::Registered => false,
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue