@riffraff Interesting, i took a peek at the docs. Primitive types implement PartialEq also between references. Just to make things easier, I think, without having to sprinkle the code with *.
E.g. for i32 https://doc.rust-lang.org/stable/std/primitive.i32.html#impl-PartialEq-for-i32 and if you look at the source you'll find this beauty
fn eq(&self, other: &Self) -> bool { *self == *other }
Since the standard library doesn't mention PartialEq between values of primitive types that must be implemented directly in the compiler. Which is pretty cool.