Previous Episode: e001: Document All the Things
Next Episode: e003: No. more. nulls.

Something borrowed, something… moved?


Subject: The struct data type constructor, and the basics of Rust’s “ownership” concept and “borrowing” and “moving”.


Follow/Support

New Rustacean:

Twitter: @newrustacean
App.net: @newrustacean
Patreon
Email: [email protected]

Chris Krycho

Twitter: @chriskrycho
App.net: @chriskrycho

Notes

Today’s episode discusses, and the associated source code demonstrates, a few basic behaviors of structs… including borrowing!


After taking a short look at one of Rust’s basic approaches to creating new types, we dive into a fairly thorough overview of how borrowing works in fairly run-of-the-mill Rust code. This is a basic introduction, and as such I’m not getting into things like heap-allocated memory (Box) or dealing with move semantics with threads or closures. (I haven’t actually figured those out well enough yet to write something like this for them!)


As usual, you’ll want to have the src open to see what I’m doing with the components documented below.


Links

rustfmt – a tool for formatting Rust code

repo
“rustfmt-ing Rust`
Reddit discussion

RFC for incremental compilation

Text of the RFC
GitHub pull request

Twitter Mentions