finished ch20 intro
All checks were successful
Test Gitea Actions / first (push) Successful in 20s
Test Gitea Actions / check-code (push) Successful in 18s
Test Gitea Actions / test (push) Successful in 18s
Test Gitea Actions / documentation-check (push) Successful in 17s

This commit is contained in:
darkicewolf50 2025-04-11 11:26:46 -06:00
parent 295d603cbd
commit 848e5c4e33
3 changed files with 34 additions and 4 deletions

View File

@ -63,6 +63,20 @@
"title": "Advanced Features" "title": "Advanced Features"
} }
}, },
{
"id": "8cdde5c4be386d20",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "Unsafe Rust.md",
"mode": "source",
"source": false
},
"icon": "lucide-file",
"title": "Unsafe Rust"
}
},
{ {
"id": "78cd7043d5d51ffa", "id": "78cd7043d5d51ffa",
"type": "leaf", "type": "leaf",
@ -116,7 +130,7 @@
} }
} }
], ],
"currentTab": 3 "currentTab": 4
} }
], ],
"direction": "vertical" "direction": "vertical"
@ -259,10 +273,11 @@
"command-palette:Open command palette": false "command-palette:Open command palette": false
} }
}, },
"active": "de2ac5df5b921166", "active": "8cdde5c4be386d20",
"lastOpenFiles": [ "lastOpenFiles": [
"Pattern Matching.md",
"Advanced Features.md", "Advanced Features.md",
"Unsafe Rust.md",
"Pattern Matching.md",
"Places Patterns Can Be Used.md", "Places Patterns Can Be Used.md",
"Pattern Syntax.md", "Pattern Syntax.md",
"Refutability.md", "Refutability.md",
@ -286,7 +301,6 @@
"Leaky Reference Cycles.md", "Leaky Reference Cycles.md",
"Test Controls.md", "Test Controls.md",
"Ref Cell Mutability.md", "Ref Cell Mutability.md",
"Reference Counter Smart Pointer.md",
"minigrep/src/lib.rs", "minigrep/src/lib.rs",
"does_not_compile.svg", "does_not_compile.svg",
"Untitled.canvas", "Untitled.canvas",

View File

@ -1 +1,16 @@
# Advanced Features # Advanced Features
So far we learned about the most commonly used parts of the Rust programming language.
Here we will look at a few aspects of the language you may run into once in a while but may not use everyday.
This is intended to be used as a reference for when you encounter any unknowns.
The features covered here are useful in very specific situations.
In this chapter we will cover
- [Unsafe Rust](./Unsafe%20Rust.md): How to opt out of some of Rust's guarantees and take responsibility for manually upholding those guarantees
- [Advanced traits](): associated types, default type parameters, fully qualified syntax, supertraits, and the new type pattern in relation to traits
- [Advanced types](): more about the newtype pattern, type aliases, the never type, and dynamically sized types
- [Advanced functions and closures](): function pointers and returning closures
- [Macros](): ways to define code that defines more code at compile time
a

1
Unsafe Rust.md Normal file
View File

@ -0,0 +1 @@
# Unsafe Rust