Rust methods: Difference between revisions

From wikinotes
Line 27: Line 27:
c.brighen();  // {r: 16, g: 16, b: 16}
c.brighen();  // {r: 16, g: 16, b: 16}
</syntaxhighlight>
</syntaxhighlight>
Similar to go, you can use the <code>.</code> operator to access methods on either a reference or an instance.<br>
rust will automatically dereference it for you.
</blockquote><!-- Structs -->
</blockquote><!-- Structs -->

Revision as of 19:49, 7 February 2023

Rust lets you add methods to structs.

TODO:

other types? what's the full spectrum here?

Structs

Rust lets you add methods to structs using impl.

type RgbColor{
    r: u8,
    g: u8,
    b: u8,
}

impl RgbColor {
    fn brighten(&self) {
        self.r += 8;
        self.g += 8;
        self.b += 8;
    }
}

let c = RgbColor{r: 8, g: 8, b: 8};
c.brighen();  // {r: 16, g: 16, b: 16}

Similar to go, you can use the . operator to access methods on either a reference or an instance.
rust will automatically dereference it for you.