In this chapter, they discuss the concept of generics in Rust and how it allows flexibility in accepting different types of inputs in functions. They also talk about the use of string slices in Rust, where the ampersand symbol is used to represent a borrowed reference to another existing string.
In this episode of Syntax, Wes and Scott jump into part 2 of their look at Rust for JavaScript developers, including variables in Rust, type systems in Rust, signed and unsigned integers, and more.
Show Notes
let x = 5; // x is immutable let mut x = 5; // x is mutable const MAX_POINTS: u32 = 100_000; // must be defined at compile time
- 10:42 Type System in Rust
- 15:52 Types in Rust
- 19:06 Why does Rust have signed and unsigned integers?
- 23:35 Slicing strings with &str
- 27:35 enum
- 27:55 struct
- 28:19 Vec
- 29:33 HashMap and HashSet
- 33:00 Converting Signed to Unsigned Numbers
let unsigned_value: u8 = 200; let signed_value: i8 = unsigned_value as i8;
- 36:12 What’s up with &str?
- 43:31 Rust error messages
- 45:28 What is a Struct?
struct User { username: String, email: String, sign_in_count: u64, active: bool, } // You can create an instance of a struct like this: let user1 = User { email: String::from("someone@example.com"), username: String::from("someusername123"), active: true, sign_in_count: 1, }; impl User { fn login(&mut self) { self.login_count += 1; } }
- 49:17 SIIIIICK ××× PIIIICKS ×××
××× SIIIIICK ××× PIIIICKS ×××
Shameless Plugs
Tweet us your tasty treats