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_types4: Referencing contiguous slices of data we don't own using range
Instructor
Chris Biscardi
Rust
Share this video with your friends
Send Tweet
Copy link
to clipboard
README
for this exercise.
Transcript
Comments