Clippy's lints aren't very helpful here in my opinion.
While I would in general agree with the many single character names being bad, I think it's justified here.
y are the standard names for these coordinates and while the
w could be expanded out to their full names, I thing that would be more distracting than helpful. The tight layout better conveys the meaning in my opinion.
As for the absurd comparison lint, I don't find the reasoning behind it very compelling for the
u32 <= 0 case. I prefer the more defensive style.
But I did add an
#[allow()] for those two lints to that function. And I do appreciate the reminder that clippy exists. I've got a bad habit of not thinking about it.
As for tests, yes I do need to add some.