1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2024-12-17 07:11:27 +02:00
Commit Graph

684 Commits

Author SHA1 Message Date
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 5a8bf5624d.
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
Dominik Maier
9e825fbd59
Clarify the "Slices" question and fix the answer (#990)
Clarify the question and fix the answer
2023-07-17 16:32:49 +00:00
Dominik Maier
faab0e2ee6
Clarify that crates don't have to live on crates.io (#985) 2023-07-17 17:58:04 +02:00
Henri Fontana
75bc262983
Update translations.md (#979)
Update list of contributors for the pt-BR translation.
2023-07-17 08:49:19 -07:00
Martin Geisler
79ae681f78
Fix broken module example (#983)
The module is external, so it should not have curly braces.
2023-07-17 16:54:47 +02:00
Martin Geisler
677e1feae1
Disambiguate b in main_improved.rs (#977)
Based on #761.
2023-07-14 12:01:00 +01:00
eepeep
eda4766442
Fix some broken fragment ID encodings in rustdoc links (#571) 2023-07-14 08:55:46 +00:00