Free software supporter, proud Linux user 🐧, communist (not a tankie, though I do like Cuba), gay femboy 🏳️🌈 and evangelist of the glorious Rust programming language 🦀.
فلسطين حرة! 🇵🇸
Слава Україні! 🇺🇦
Rusty as in the Rust programming language.
I think this happens because people believe that ad blockers are “too good to be true”. That was what I first thought when first getting an ad blocker, that there was going to be some kind of “catch” like slowing down websites, making them less functional or being malicious. But it turns out they actually improve performance, rarely affect functionality and are even recommended by the FBI because they protect against malicious advertising.
Yes, it is that simple. In Rust if you have a structure
Person
and you want to allow testing equality between instances, you just add that bit of code before the struct definition as follows:#[derive(PartialEq, Eq)] struct Person { name: String, age: u32, }
In Rust,
PartialEq
andEq
are traits, which are similar to interfaces in Java. Manually implementing thePartialEq
trait 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
Clone
to allow creating a copy of an instance,Debug
for getting a string representation of an object, andPartialOrd
andOrd
for 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.