Martin Geisler
debaca9f7f
Add speaker notes for CXX page ( #1060 )
...
While we don’t have slides showing how to use the crate (#823 ), we can
at least explain at a high level what the instructor should focus on
when walking through the tutorial.
2023-08-11 13:00:10 +02:00
sakex
f79e6726cc
Add that the ?
operator works with From<Err>
( #1059 )
2023-08-09 16:48:15 +02:00
Fabian Bornhofen
17c77d398a
Update course length in hello-world.md ( #1055 )
...
The fundamentals part is only three days long now
2023-08-07 21:36:54 +02:00
Martin Geisler
c23da457ae
Expand "iff" to "if and only if" ( #1051 )
...
There has been a few PRs which wanted to change "iff" to "if". Expanding it should help and avoid math-heavy jargon.
2023-08-04 12:52:36 +01:00
Martin Geisler
c7240f604f
Expand "iff" to "if and only if" in pl031.rs ( #1052 )
...
* Expand "if" to "if and only if" in pl031.rs
Similar to #1051 .
2023-08-04 11:04:02 +01:00
Arman
560cad93e6
Fixed link ( #1044 )
2023-08-02 15:39:42 +00:00
Martin Geisler
8d9fddd92f
Rename welcome.md
to index.md
( #1039 )
...
When building the book, mdBook will always generate an `index.html`
page for first page of the book. This meant that we had the same
content available under two different names:
- `welcome.html`: this is what the TOC would link to, and
- `index.html` or simply `/`: this is what search engines link to
Renaming the page and setting up a redirect should fix this confusion.
We still don’t have a good way of avoiding links to the `index.html`
page, but this should fix the first half of the problem.
I tested this for translations as well by building the output in a
subdirectory and serving the parent directory.
Part of #847 .
2023-07-28 17:27:31 +02:00
sakex
98be9e149c
Talk about options in ?
chapter ( #600 )
...
* Talk about options in `?` chapter
* Combine Option and Result examples
* Update try-operator.md
* Remove semicolon from expansion
* Focus on expansion of `expr?`
* Update try-operator.md
* Update try-operator.md
---------
Co-authored-by: Martin Geisler <mgeisler@google.com>
2023-07-28 13:48:58 +02:00
Dominik Maier
a7a9ee84b4
Default trait slides cleanup ( #1038 )
...
* Default trait slides cleanup
* Update src/traits/default.md
Co-authored-by: Martin Geisler <martin@geisler.net>
---------
Co-authored-by: Martin Geisler <martin@geisler.net>
2023-07-27 13:53:47 +00:00
Martin Geisler
785eb7cdf9
Mention Rust Fundamentals on Day 1 welcome ( #1034 )
...
Conceptually, I'm now thinking of Day 1 to Day 3 as belonging to "Rust Fundamentals", which together with the deep dives make up what we call "Comprehensive Rust".
2023-07-26 11:11:52 -04:00
sakex
e99df4ae5a
Rephrase static-and-const ( #601 )
...
* Rephrase static-and-const
* Reduce size, add table to compare static vs const
2023-07-26 14:15:50 +02:00
Andrew Walbran
bc972711a2
Clarify distinction between interior mutability and mutable statics. ( #1019 )
2023-07-26 13:22:42 +02:00
Martin Geisler
b0a9c630f2
Revert "std::mem::drop
is in the prelude" ( #1031 )
...
Revert "`std::mem::drop` is in the prelude (#1027 )"
This reverts commit 5a8bf5624ddd711ff39ff5f13c3e25ae30098e11.
2023-07-26 10:31:25 +02:00
Martin Geisler
94ff8548fd
Explain what "Android team" means ( #1032 )
...
I hope this makes it a little clearer where the course comes from.
2023-07-25 15:21:58 +02:00
Martin Geisler
0980211db2
Introduce Rust Fundamentals on welcome page ( #1029 )
...
The split between Day 1 to 3 and the deep dives was never explicitly explained.
2023-07-25 15:04:32 +02:00
Martin Geisler
e9ddf3d9cf
Fix space in welcome.md ( #1030 )
2023-07-25 12:51:51 +01:00
Martin Geisler
3c7659d59b
Align dining-philosophers-async.rs with sync version ( #1024 )
...
* Align dining-philosophers-async.rs with sync version
This updates the version to use `std::mem::swap` like the synchronous version.
* Apply suggestions from code review
2023-07-25 06:56:27 +00:00
Vito King
bf3ffa23ee
Fix self
shorthand syntax ( #1028 )
...
Fix 'self' shorthand syntax
2023-07-25 08:54:41 +02:00
Martin Geisler
2c820e7bf3
Move thread::spawn
to separate function ( #1020 )
...
This might make it clearer why the thread cannot borrow from the string.
2023-07-24 14:28:14 -07:00
Martin Geisler
dbb3217667
std::mem::drop
is in the prelude (#1026 )
2023-07-24 15:03:19 -04:00
Martin Geisler
5a8bf5624d
std::mem::drop
is in the prelude (#1027 )
2023-07-24 20:46:55 +02:00
Martin Geisler
e8ea741cea
Use Arc::clone
instead of .clone()
( #1023 )
...
The fully qualified syntax is recommended for `Arc` which implements all methods as associated methods.
2023-07-24 11:19:06 -07:00
Martin Geisler
a2367b4d93
Use * foo:
for list ( #1025 )
...
We could use an m-dash, but we're using `:` aligns with how the rest of the course is written.
2023-07-24 11:17:23 -07:00
Dominik Maier
2685d8ec0d
New is implied in square ( #1010 )
2023-07-24 08:10:47 -04:00
Shaurya Arora
f1058980e4
Update while-let-expressions.md ( #1018 )
...
Update code snippet description to use `v.into_iter()`
instead of `v.iter()` since the former is what's actually
used in the code snippet.
2023-07-23 21:02:20 -07:00
Martin Geisler
03bc5be016
Fix Godbolt typo ( #1014 )
2023-07-21 15:01:10 -07:00
Dominik Maier
6e367132ad
Remove unneeded macro from Enum Sizes slide ( #1015 )
...
* Remove unneeded macro from Enum Sizes slide
* Update src/enums/sizes.md
---------
Co-authored-by: Martin Geisler <martin@geisler.net>
2023-07-21 10:23:30 -04:00
Dominik Maier
bd4839e394
Refer to Godbolt ( #1011 )
...
* Refer to Godbolt
* Apply suggestions from code review
---------
Co-authored-by: Martin Geisler <martin@geisler.net>
2023-07-20 15:46:50 +00:00
Martin Geisler
d4c08e6c9d
Remove statement that data is moved when assigning ( #982 )
...
* Remove statement that data is moved when assigning
The distinction between non-`Copy` and `Copy` types is tricky to explain. One problem is that people often focus on _moving_ vs _copying_ when both variable types always copy data.
This PR removes the statement about moving data (since that is wrong on its own).
* Apply suggestions from code review
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
* Apply suggestions from code review
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
---------
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
2023-07-18 08:52:26 -07:00
Dominik Maier
486458c72d
Memory Management: Rework Scope-based Cons ( #998 )
...
* Memory Management: Add classic ARC issues to Comparison
* replaced uaf reference (which needs misuse in C++)
2023-07-18 08:51:52 -07:00
Martin Geisler
cb45d322c7
Make installation URL more prominent ( #1006 )
...
* Make installation URL more prominent
This makes it more prominent that people should go to rustup.rs to install Rust.
2023-07-18 11:37:57 +00:00
Dominik Maier
2c3aa82af5
Filesystem slide rework ( #1002 )
...
* Filesystem slide rework (2015 is over)
* cleanup
* Cleanup text
* Specify "current versions"
Co-authored-by: Martin Geisler <martin@geisler.net>
---------
Co-authored-by: Martin Geisler <martin@geisler.net>
2023-07-18 13:32:45 +02:00
Martin Geisler
94e5db7ddb
Fix capitalization of Rust ( #1007 )
2023-07-18 12:41:27 +02:00
Dominik Maier
2f86a259b6
Add Mutex information to Rc slide ( #1001 )
...
Add mutex information to Rc slide
2023-07-18 11:03:45 +02:00
Dominik Maier
0411d0c8e5
Additional sentence for derive macros ( #1003 )
2023-07-18 11:02:49 +02:00
Dominik Maier
640be0770a
Equal
-> Equals
for consistency (#1004 )
...
* Equal -> Equals for consistency
* forgot one
2023-07-18 11:02:35 +02:00
Dominik Maier
46a38bc67a
Error is not yet available in core on stable ( #1005 )
2023-07-18 11:02:24 +02:00
Dominik Maier
ebbb696703
Rename confusing 'Double Free' ( #1000 )
2023-07-17 22:42:35 -07:00
Dominik Maier
797260b813
Use non-generic default ( #999 )
2023-07-17 22:38:48 -07:00
Dominik Maier
3f1a8d8ca1
Memory Management: Leaks are bad, RCE is worse ( #997 )
...
Leaks are bad, RCE is worse
2023-07-17 22:36:14 -07:00
Dominik Maier
aabe0c0a96
'Stack Memory' slide isn't really showing stack memory ( #996 )
2023-07-17 22:35:20 -07:00
Dominik Maier
cb689be312
Static variables don't need unsafe ( #995 )
2023-07-17 22:23:03 -07:00
Dominik Maier
21ea796e3b
Move to more legible types ( #989 )
...
* Move to more legible types
* Add information about underscores
2023-07-17 22:12:51 -07:00
Dominik Maier
97ac01dc75
Rust isn't functional, but it does have functional elements ( #987 )
...
* Rust isn't functional, but it does have functional elements
* End sentence
Co-authored-by: Martin Geisler <martin@geisler.net>
* add info about OO
---------
Co-authored-by: Martin Geisler <martin@geisler.net>
2023-07-18 01:13:06 +02:00
Dominik Maier
e7253e2b5e
Updated 'Using Cargo' ( #984 )
2023-07-17 23:26:39 +02:00
Dominik Maier
e59a87f0c0
Clarify constructors in the speaker notes for methods ( #992 )
2023-07-17 17:17:26 -04:00
Dominik Maier
ba403016b9
Add note about doc tests ( #991 )
2023-07-17 17:16:23 -04:00
Dominik Maier
4fe28011a0
Fix links to FromIterator, HashSet ( #993 )
2023-07-17 15:10:02 -04:00
Dominik Maier
165a6c8f79
Add reference to microcontrollers as target for rust ( #986 )
2023-07-17 19:01:21 +02:00
Dominik Maier
eb0150fb84
Remove the overly specific 40 years reference ( #988 )
2023-07-17 18:57:33 +02:00