If we have a code like this:
struct A;
impl A {
fn method(&self) {
// do something, but don't use self.
}
}
We could highlight "unused self" and advise to refactor it to a static method or a function. The same lint has been in Python language for a decade, I believe.
Note: if the self argument is unused within a trait, we should not lint this, because this becomes a part of a generic interface, which could have been done intentionally.
Hi, I'd like to work on this issue :)
Please note, that in such methods we should also treat any form of accepting self argument there: by reference, mutable reference, pointers, moving, anything.
Most helpful comment
Hi, I'd like to work on this issue :)