egghead.io
Download
Turn autoplay on
Autoplay
Course
Learning Rust by Working Through the Rustlings Exercises
1
Setup Rustlings
1m 44s
2
Rustlings variables1: Running the rustlings CLI and completing exercises
1m 40s
3
Rustlings variables2: Declaring types and assigning values to variables
50s
4
Rustlings variables3: Using the mut keyword to declare a mutable variable
46s
5
Rustlings variables4: Initializing a variable with a value
28s
6
Rustlings variables5: Using block scopes to shadow previously declared variables
1m 25s
7
Rustlings if1: Using an if/else statement to implicitly (or explicitly) return a value
1m 28s
8
Rustlings functions1: Declaring your first function
25s
9
Rustlings functions2: Adding a type to function arguments
1m 38s
10
Rustlings functions3: Passing an argument to a function
18s
11
Rustlings functions4: Declaring the return type of a function
43s
12
Rustlings functions5: Implicitly returning values from functions
1m 10s
13
Rustlings test1: Writing a function that passes a set of tests by reading error messages
2m 11s
14
Rustlings primitive_types1: Introducing boolean values
35s
15
Rustlings primitive_types2: String and Character literals using different quote styles
47s
16
Rustlings primitive_types3: Create an array of numbers using Ranges
29s
17
Rustlings primitive_types4: Referencing contiguous slices of data we don't own using range
49s
18
Rustlings Primitive_types5: Destructuring values from a tuple
26s
19
Rustlings primitive_types6: Accessing specific values in a tuple by index
17s
20
Rustlings structs1: Instantiating Classic, Tuple, and Unit structs
2m 9s
21
Rustlings structs2: Filling in the unspecified fields in structs with update syntax
1m 47s
22
Rustlings strings1: String literals are string slices, not String structs
24s
23
Rustlings strings2: String structs can be turned into &str slices via referencing
52s
24
Rustlings test2: Determining when a value is a String struct vs a string slice
3m 16s
25
Rustlings enums1: Declaring enums
21s
26
Rustlings enums2: Defining enum variants using classic, unit, and tuple structs
1m 17s
27
Rustlings enums3: Working with enums by pattern matching variants
3m 13s
28
Rustlings tests1: Introducing the assert! macro
18s
29
Rustlings tests2: Introducing the assert_eq! macro
19s
30
Rustlings tests3: Writing tests for a function
1m 2s
31
Rustlings test3: Testing a function multiple times
39s
32
Rustlings modules1: Declaring public functions in a module using the pub keyword
24s
33
Rustlings modules2: Defining public interfaces for nested modules
57s
34
Rustlings macros1: Writing your first macro
23s
35
Rustlings macros2: What order you write macro definitions in matters
33s
36
Rustlings macros3: Exporting a macro from a module
31s
37
Rustlings macros4: Using rustfmt to fix common syntax issues
49s
38
Rustlings test4: Defining macros that accept arguments
49s
39
Rustlings move_semantics1: Borrowing vectors as mutable
55s
40
Rustlings move_semantics2: Fixing the borrow of moved values with cloning or references
55s
41
Rustlings move_semantics3: Specifying that a function argument is mutable
22s
42
Rustlings move_semantics4: Initializing a vector with the vec! macro
57s
43
Rustlings errors1: Propagating the reason something failed using Result, Err, and Ok
1m 15s
44
Rustlings errors2: Handling errors by unwrapping or early-returning with the `?` operator
1m 8s
45
Rustlings errors3: Using the `?` operator in the main function
1m 19s
46
Rustlings errorsn: Using Box to dynamically return one of multiple error types at runtime
1m 1s
47
Rustlings option1: Introducing the Option type
1m 28s
48
Rustlings option2: Using if let and while let to process Optional values
1m 29s
49
Rustlings result1: Using custom enum variants as errors in Result return types
51s
50
Rustlings clippy1: Using Clippy linting to discover potentially dangerous code scenarios
1m 46s
51
Rustlings clippy2: Making code more readable with clippy linter suggestions
31s
52
Rustlings arc1: Using Arc to share data safely among threads
1m 44s
53
Rustlings iterators2: Introducing Iterators by manually calling .next and using .iter()
1m 52s
54
Rustlings iterators3: Iterating and collecting values using the IntoIter trait
2m 9s
55
Rustlings iterators4: Implementing Factorial with Iterators
2m 12s
56
Rustlings traits1: Extending a type with additional functionality by implementing traits
42s
57
Rustlings traits2: Implementing a Trait for a Vector of Strings
1m 1s
58
Rustlings generics1: Using Vectors, a struct that implements generics
26s
59
Rustlings generics2: Converting concrete types to generic implementations
1m 1s
60
Rustlings generics3: Constraining generics using traits
1m 32s
Rustlings Primitive_types5: Destructuring values from a tuple
Instructor
Chris Biscardi
Rust
Share this video with your friends
Send Tweet
Copy link
to clipboard
README
for this exercise.
Transcript
Comments