305
I love Rust
(lemmy.blahaj.zone)
Post funny things about programming here! (Or just rant about your favourite programming language.)
Yes, it is that simple. In Rust if you have a structure
Personand you want to allow testing equality between instances, you just add that bit of code before the struct definition as follows:In Rust,
PartialEqandEqare traits, which are similar to interfaces in Java. Manually implementing thePartialEqtrait in this example would be writing code that returns something likea.name == b.name && a.age == b.age. This is pretty simple but with large data structures it can be a lot of boilerplate.There also exist other traits such as
Cloneto allow creating a copy of an instance,Debugfor getting a string representation of an object, andPartialOrdandOrdfor providing an ordering. Each of these traits can be automatically implemented for a struct by adding#[derive(PartialEq, Eq, Clone, Debug, PartialOrd, Ord)]before it.