This repository was archived by the owner on Feb 14, 2024. It is now read-only.
File tree
1,968 files changed
+31206
-0
lines changed- .cargo
- .idea
- Common Collections
- Hashmaps
- Accessing Values in a Hash Map
- src
- Build Scores Table
- src
- tests
- Creating a New Hash Map
- src
- Fruits Delivery
- src
- tests
- Hash Maps and Ownership
- src
- Intro
- src
- More Fruits
- src
- tests
- Updating a Hash Map
- src
- Options
- Check Clippy for Option
- src
- Check More Clippy Suggestions
- src
- Optional Value
- runConfigurations
- src
- tests
- Use Option
- runConfigurations
- src
- tests
- Strings
- Creating a New String
- src
- Indexing into Strings
- src
- Intro
- src
- Iterating Over Strings
- src
- Process Some Strings
- src
- tests
- Return a String
- src
- tests
- Slicing Strings
- src
- String Slice
- src
- tests
- String Transformer
- src
- tests
- Strings and strs
- src
- tests
- Summary
- src
- Updating a String
- src
- Vectors
- Count Typed Cells
- src
- tests
- Create a Vector on Your Own
- src
- tests
- Creating a New Vector
- src
- Dropping a Vector Drops Its Elements
- src
- Intro
- src
- Iterating over the Values in a Vector
- src
- Loop Over a Vector
- src
- tests
- Reading Elements of Vectors
- src
- Reference vs push
- src
- Updating a Vector
- src
- Using an Enum to Store Multiple Types
- src
- Common Programming Concepts
- Basic Data Types
- Boolean Test
- src
- tests
- Booleans
- src
- Characters
- src
- Characters Test
- src
- tests
- Floating-Point Types
- src
- Integer Types
- src
- Intro
- src
- Numeric Operations
- src
- Numeric Test
- src
- tests
- Use Clippy as External Linter
- src
- Conditions
- Add Conditions
- src
- tests
- If Task
- src
- tests
- Intro
- src
- Managing Conditions
- src
- Using if in a let Statement
- src
- else if
- src
- Functions
- Defining a Function
- src
- tests
- Extract Method Refactoring
- src
- Function Parameters
- src
- Functions with Return Values
- src
- Intro
- src
- Passing an Argument
- src
- tests
- Return Type
- src
- tests
- Return a Value
- src
- tests
- Statements and Expressions
- src
- Type Annotation of a Parameter
- src
- tests
- Repetitions
- Conditional Loops with while
- src
- Find a sum
- src
- tests
- Looping Through an Array with for
- src
- Looping through Ranges
- src
- Print Months
- src
- tests
- Repetition with Loops
- src
- Tuples and Arrays
- Create an Array
- src
- tests
- Destructure a Tuple
- src
- tests
- The Array Type
- src
- The Tuple Type
- src
- Tuple Index
- src
- tests
- Variables
- Changing Type
- src
- tests
- Constant Type
- src
- tests
- Constants
- src
- Intro
- src
- Introduce Variable Refactoring
- src
- Mutable Variable Binding
- src
- tests
- New Variable Binding
- src
- tests
- Shadowing
- src
- Value
- src
- tests
- Variable Type
- src
- tests
- Variables and Mutability
- src
- Variables, Functions, and Conditions Test
- Calculate Price
- src
- tests
- Error Handling
- Error Handling
- A Shortcut for Propagating Errors
- src
- Intro
- src
- Matching Result
- src
- tests
- Matching Result 2
- src
- tests
- Matching on Different Errors
- src
- Propagating Errors
- src
- Propagating Errors Limitations
- src
- Recoverable Errors with Result
- src
- Returning Result
- src
- tests
- Shortcuts for Panic on Error - unwrap and expect
- src
- Summary
- src
- Unrecoverable Errors with panic
- src
- Using a panic Backtrace
- src
- Errors Primer
- Advanced Errors
- src
- tests
- Advanced Errors 2
- src
- tests
- Custom Errors
- src
- tests
- Multiple Errors
- src
- tests
- Positive Nonzero Integer
- src
- tests
- Fearless Concurrency
- Using Message Passing to Transfer Data Between Threads
- Channels and Ownership Transference
- src
- Creating Multiple Producers by Cloning the Transmitter
- src
- Creating a Channel
- src
- Intro
- src
- Receiving Values
- src
- Sending Multiple Values and Seeing the Receiver Waiting
- src
- Sending Values
- src
- Sum All Numbers
- src
- tests
- Using Threads to Run Code Simultaneously
- Creating a New Thread with spawn
- src
- Intro
- src
- Join All Handles
- src
- tests
- Using move Closures with Threads
- src
- Waiting for All Threads to Finish Using join Handles
- src
- Generic Types, Traits, and Lifetime
- Generic Data Types
- Generics in Structs
- src
- tests
- Generics in Vec
- src
- tests
- In Enum Definitions
- src
- In Function Definitions
- src
- In Method Definitions
- src
- In Struct Definitions
- src
- Intro
- src
- Mixing Generic Types
- src
- Performance of Code Using Generics
- src
- Intro
- Code without Duplications
- src
- Computing the Largest Number
- src
- Duplicated Code Fragments
- src
- Intro
- src
- Removing Duplication by Refactorings
- images
- src
- Lifetimes
- Generic Lifetimes in Functions
- src
- Generic Type Parameters, Trait Bounds, and Lifetimes Together
- src
- Intro
- src
- Lifetime Annotation Syntax
- src
- Lifetime Annotations in Function Signatures
- src
- Lifetime Annotations in Method Definitions
- src
- Lifetime Annotations in Struct Definitions
- src
- Lifetime Elision
- src
- Lifetime Going Out of Scope
- src
- Lifetimes for Structs with References
- src
- tests
- Pattern Binding
- src
- tests
- Preventing Dangling References with Lifetimes
- src
- Specify Lifetimes
- src
- tests
- Summary
- src
- The Borrow Checker
- src
- The Static Lifetime
- src
- Thinking in Terms of Lifetimes
- src
- Unify Lifetimes
- src
- tests
- Traits
- Calling Methods Without Default Implementations
- src
- Combine Traits
- src
- tests
- Compare Licenses
- src
- tests
- Default Implementations
- src
- Defining a Trait
- src
- Fixing the largest Function with Trait Bounds
- src
- Implementing a Trait on a Type
- src
- License It
- src
- tests
- Returning Types that Implement Traits
- src
- String Trait
- src
- tests
- Trait Bound Syntax
- src
- tests
- Traits
- src
- Traits as Parameters
- src
- Using Trait Bounds to Conditionally Implement Methods
- src
- Vec Trait
- src
- tests
- Introduction
- Getting started
- About
- src
- Course View
- src
- Editor
- src
- External Linter
- images
- src
- Hello World
- src
- tests
- Task Description
- images
- src
- Macros
- Declarative Macros
- Calling a Macro
- src
- tests
- Declarative Macros with macro_rules
- src
- Declaring a Macro
- src
- tests
- Implement a Macro
- src
- tests
- Macro Arms
- src
- tests
- Outside of Module
- src
- tests
- Intro
- Intro
- src
- The Difference Between Macros and Functions
- src
- Procedural Macros
- Attribute-like macros
- src
- Function-like macros
- src
- How to Write a Custom derive Macro
- src
- Procedural Macros for Generating Code from Attributes
- src
- Summary
- src
- hello_macro
- src
- hello_macro_derive
- runConfigurations
- src
- Modules
- Modules
- Bringing Paths into Scope with the use Keyword
- runConfigurations
- src
- Defining Modules
- runConfigurations
- src
- Eating Some Snacks
- src
- tests
- Exposing Paths with the pub Keyword
- runConfigurations
- src
- Home Alone at Day X
- src
- first_floor
- ground_floor
- second_floor
- tests
- Intro
- src
- Making Structs and Enums Public
- runConfigurations
- src
- Making a sausage
- src
- tests
- Paths for Referring to an Item in the Module Tree
- runConfigurations
- src
- Providing New Names with the as Keyword
- runConfigurations
- src
- Quick Reference
- src
- garden
- Re-exporting Names with pub use
- runConfigurations
- src
- Separating Modules into Different Files
- runConfigurations
- src
- front_of_house
- Starting Relative Paths with super
- runConfigurations
- src
- Summary
- src
- The Glob Operator
- src
- Time To Check Time
- src
- tests
- Using External Packages
- src
- Using Nested Paths to Clean Up Large use Lists
- src
- Standard Library Types
- Closures
- Capturing References or Moving Ownership
- src
- Capturing the Environment with Closures
- src
- Closure Type Inference and Annotation
- src
- Example sort_by_key
- src
- Filter a sequence with a closure
- src
- tests
- Intro
- src
- Moving Captured Values Out of the Closure and the Fn Traits
- src
- unwrap_or_else
- src
- Iterators
- Capitalize first
- src
- tests
- Count Progress
- src
- tests
- Factorial
- src
- tests
- Iterable Collection
- src
- tests
- Iterator
- src
- tests
- Loop Over Vector With Iterators
- src
- tests
- Methods that Consume the Iterator
- src
- Methods that Produce Other Iterators
- src
- Processing a Series of Items with Iterators
- src
- The Iterator Trait and the next Method
- src
- Using Closures that Capture Their Environment
- src
- Smart Pointers
- Box Task
- src
- tests
- Intro
- src
- Switch the Lamp
- src
- tests
- Use Cow
- src
- Use Rc
- src
- tests
- Workers in the Engine
- src
- tests
- Type Conversions
- AsRef and AsMut
- src
- tests
- From Into
- src
- tests
- FromStr
- src
- tests
- Intro
- src
- Try From Into
- src
- tests
- Using As
- src
- tests
- Structs, Methods, Enums, and Pattern Matching
- Enums
- Defining an Enum
- src
- Deliver Complex Messages
- src
- tests
- Deliver Messages
- src
- tests
- Enum Values with Data
- src
- Enum Values with Different Data
- src
- Enums with Data and Methods
- src
- Intro
- src
- The Option Enum
- src
- Pattern Matching
- Catch-all Patterns and the _ Placeholder
- src
- If Let
- src
- Implement Match
- src
- tests
- Matches Are Exhaustive
- src
- Matching with Option
- src
- Patterns that Bind to Values
- src
- Summary
- src
- The Match Operator
- src
- Structs
- Adding Useful Functionality with Derived Traits
- src
- Creating Instances From Other Instances
- src
- Dealing with Rectangles
- src
- Defining and Initiating Structs
- src
- Intro
- src
- Ownership of Struct Data
- src
- Play with Color Structs
- src
- tests
- Refactoring with Structs, Adding More Meaning
- src
- Refactoring with Tuples
- src
- Struct Update
- src
- tests
- Tuple Structs
- src
- Using the Field Init Shorthand
- src
- Structs with Methods
- Associated Functions and Multiple impl Blocks
- src
- Defining Methods
- src
- Intro
- src
- Methods with More Parameters
- src
- Sending Packages
- src
- tests
- Summary
- src
- Understanding Ownership
- References and Borrowing
- Borrowing Values with References
- src
- Dangling References
- src
- Exclamations Strike Back
- src
- tests
- Intro
- src
- Move, Borrow, Mutate, or What
- src
- tests
- Mutable References
- src
- Print Months Once Again
- src
- tests
- Reference Order
- src
- tests
- Restriction of Mutable References
- src
- Scopes of References
- src
- The Last Revenge of Exclamations
- src
- tests
- The Rules of References
- src
- The Slice Type
- Intro
- src
- Nice Slice
- src
- tests
- Other Slices
- src
- String Literals Are Slices
- src
- String Slices
- src
- String Slices as Parameters
- src
- Summary
- src
- Summer Slice
- src
- tests
- Trim a String
- src
- tests
- Understanding Types
- src
- What is ownership
- Build String from Literals
- src
- tests
- Clone and Copy
- src
- Explore Scopes
- src
- tests
- Intro
- src
- More Exclamations
- src
- tests
- More Exclamations 2
- src
- tests
- More Exclamations with Mutable Argument
- src
- tests
- More Exclamations without Arguments
- src
- tests
- Moving Ownership
- src
- Ownership and Functions
- src
- Return Values and Scope
- src
- The String Type
- src
- Tuples, Clone or Copy
- src
- tests
- Variable Scope
- src
- Who Owns the One Ring
- src
- tests
- Writing Automated Tests
- How to Write Tests
- Adding Custom Failure Messages
- src
- Assert
- src
- tests
- Assert_Eq
- src
- tests
- Checking Results with the assert Macro
- src
- Checking for Panics with should_panic
- src
- Intro
- src
- Testing Equality with the assert_eq and assert_ne Macros
- src
- Testing a Function
- src
- tests
- The Anatomy of a Test Function
- src
- Using Result in Tests
- src
- Running and Organizing Tests
- Integration Tests
- src
- tests
- Running Tests
- src
- Submodules in Integration Tests
- src
- tests
- common
- Summary
- src
- Test Organization
- src
- Times Two Tests
- src
- tests
- Unit Tests
- src
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
1,968 files changed
+31206
-0
lines changedOriginal file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
| 1 | + | |
| 2 | + |
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
| 1 | + |
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments