Useful Links
Computer Science
Programming
By Language
Rust Programming
1. Getting Started with Rust
2. Rust Fundamentals
3. Understanding Ownership
4. Structuring Data with Structs
5. Enums and Pattern Matching
6. Managing Growing Projects
7. Common Collections
8. Error Handling
9. Generic Types, Traits, and Lifetimes
10. Writing Automated Tests
11. Functional Programming Features
12. Smart Pointers
13. Fearless Concurrency
14. Advanced Features
15. Foreign Function Interface
16. Rust Patterns and Best Practices
Smart Pointers
Box<T> Heap Allocation
Heap vs Stack Allocation
Box Creation and Usage
Recursive Data Structures
Box Deref Behavior
Deref Trait
Deref Coercion
DerefMut Trait
Custom Smart Pointer Implementation
Deref vs AsRef
Drop Trait
Automatic Cleanup
Custom Drop Implementation
Drop Order
mem::drop Function
RAII Pattern
Rc<T> Reference Counting
Shared Ownership
Reference Count Management
Rc::clone vs Clone
Weak References
Weak<T> Type
Breaking Reference Cycles
Upgrading Weak References
RefCell<T> Interior Mutability
Runtime Borrow Checking
borrow and borrow_mut Methods
BorrowError and BorrowMutError
Interior Mutability Pattern
Combining Rc and RefCell
Shared Mutable State
Multiple Owners with Mutation
Previous
11. Functional Programming Features
Go to top
Next
13. Fearless Concurrency