mirror of
https://github.com/astral-sh/ruff.git
synced 2025-09-30 05:44:56 +00:00
Inline DiagnosticKind
into other diagnostic types (#18074)
## Summary This PR deletes the `DiagnosticKind` type by inlining its three fields (`name`, `body`, and `suggestion`) into three other diagnostic types: `Diagnostic`, `DiagnosticMessage`, and `CacheMessage`. Instead of deferring to an internal `DiagnosticKind`, both `Diagnostic` and `DiagnosticMessage` now have their own macro-generated `AsRule` implementations. This should make both https://github.com/astral-sh/ruff/pull/18051 and another follow-up PR changing the type of `name` on `CacheMessage` easier since its type will be able to change separately from `Diagnostic` and `DiagnosticMessage`. ## Test Plan Existing tests
This commit is contained in:
parent
b35bf8ae07
commit
e2c5b83fe1
41 changed files with 604 additions and 621 deletions
|
@ -49,7 +49,7 @@ pub fn derive_combine(input: TokenStream) -> TokenStream {
|
|||
.into()
|
||||
}
|
||||
|
||||
/// Converts a screaming snake case identifier to a kebab case string.
|
||||
/// Converts an identifier to a kebab case string.
|
||||
#[proc_macro]
|
||||
pub fn kebab_case(input: TokenStream) -> TokenStream {
|
||||
let input = parse_macro_input!(input as syn::Ident);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue