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

441 Commits

Author SHA1 Message Date
MMINO
ff66258c50
Fix typo in borrowing.md in the Speaker's Notes (#490)
the -> they
2023-03-09 14:13:04 +00:00
Charisee Chiw
3242afae09
Create default.md (#370)
* Create default.md

* Update SUMMARY.md

* Update SUMMARY.md

* Update default.md

* Update default.md

* Update default.md
2023-03-07 17:11:43 +01:00
Martin Geisler
64340562ea
Add badges to README and welcome page (#481) 2023-03-07 12:45:00 +00:00
Martin Geisler
31500974e4
Add note about requesting a room with tables (#479)
* Add note about requesting a room with tables

The course is built on the idea of using live-coding as much as possible. This means that it's important that there are desks in the classrooms — a traditional auditorium setup does not work well.
2023-03-06 15:23:10 +01:00
JeongHyeon Lee
05eb17a6fe
Fix typo in string.md (#473) 2023-03-04 17:22:04 +01:00
Andrew Walbran
a78d58ba56
Add note about hygienic macros (#472)
* Add note about hygienic macros

* Fix typo.

* Add link about macro hygiene.
2023-03-03 12:19:52 +00:00
Martin Geisler
2de8d7cdbb
Simplify running the course slightly (#463)
Thanks to many contributors, we now have lots of speaker notes.
2023-03-02 09:13:49 +01:00
Charisee Chiw
c22b35e426
Remove silenced warnings in book-library exercise (#388)
* Update book-library.md

* Update book-library.rs

* Apply suggestions from code review

Expanding the variable makes it ever-so-slightly easier to read.

---------

Co-authored-by: Martin Geisler <mgeisler@google.com>
2023-02-28 17:53:02 -08:00
Martin Geisler
1feb94e02a
Take out unnecessary code from enum size slide (#309)
The slide is way too large to comfortable use in a classroom. Instead
of printing six lines of output, the instructor should carefully walk
through the different examples. That way we can take the course
participants with us through the explanations instead of simply
showing them the end result.
2023-02-27 17:42:46 +01:00
Adam MacBeth
b1b78a9672
Fix typo in string.md (#456)
* Fix typo in string.md

* Update src/std/string.md

---------

Co-authored-by: Martin Geisler <martin@geisler.net>
2023-02-27 13:37:08 +00:00
Steve Masterman
0562771ce0
Update variant-payloads.md (#459)
Fix typo
2023-02-27 13:19:32 +00:00
Charisee Chiw
e73b163d77
Add to speaker notes rc.md (#366)
* Update rc.md

* Fix wording and formatting

* Update rc.md

---------

Co-authored-by: Andrew Walbran <qwandor@google.com>
2023-02-27 02:05:01 +00:00
Adam MacBeth
4690f19e8c
Fix typo in drop.md (#457) 2023-02-26 22:04:39 +00:00
Andrew Jones
db7a6044b4
Remove extraneous trailing parenthesis (#453)
The text currently looks like this:
> See the Rust Reference).

And should look like this:
> See the Rust Reference.

Closer #452
2023-02-24 16:27:24 +01:00
Charisee Chiw
60aa747aca
Add Speaker notes string.md (#368)
* Update string.md

* Update src/std/string.md

Co-authored-by: Martin Geisler <mgeisler@google.com>

* Update src/std/string.md

Co-authored-by: Martin Geisler <mgeisler@google.com>

* Update string.md

---------

Co-authored-by: Martin Geisler <mgeisler@google.com>
2023-02-22 18:01:07 +00:00
Alexey Sokolov
e616f66593
Clarify box (#448) 2023-02-22 16:08:50 +01:00
Charisee Chiw
bb3b17b6bd
Additional speaker notes for variant payloads (#200)
* Additional speaker notes for variant payloads

* Update variant-payloads.md

* Update variant-payloads.md
2023-02-22 15:00:45 +00:00
Charisee Chiw
3f6bd6aa14
Speaker Notes for Field Shorthand (#198)
* Speaker Notes for Field Shorthand

* Update field-shorthand.md
2023-02-22 14:55:29 +00:00
Charisee Chiw
8ee637d886
Lecture notes for Destructing Arrays (#266)
* Lecture notes for Destructing Arrays

* Update destructuring-arrays.md
2023-02-22 13:41:12 +01:00
Adam MacBeth
9bb586689a
Minor grammar fixes to type-inference.md (#437) 2023-02-19 09:27:56 +01:00
Adam MacBeth
e6d6ee28fe
Update move-semantics.md (#438) 2023-02-19 09:27:41 +01:00
Adam MacBeth
aef4c3ca72
Update example.md (#441) 2023-02-19 04:53:11 +00:00
Adam MacBeth
9510e80165
Update receiver.md (#440) 2023-02-19 04:52:41 +00:00
Jiyong Park
92d00f2fd4
Fix typo: patten -> pattern (#430) 2023-02-17 18:34:35 +09:00
Jiyong Park
eb57ba9e51
Publish Korean translation (#428)
* Publish Korean translation

* 한국어 -> 한국어 (Korean)

* Add translator names for the Korean translation
2023-02-17 17:58:33 +09:00
Andrew Jones
9a4cda6f35
Fix references within options returned from Args (#427)
This fixes #426
2023-02-16 21:54:18 +00:00
Martin Geisler
bc2dbd0fd3
Add a page which mentions the translations (#424)
This is to help people discover the language picker.
2023-02-16 13:21:45 +01:00
gendx
29b6b90bfc
Add example where breaking UTF-8 encoding leads to a crash. (#387) 2023-02-16 03:19:44 +00:00
Marko Zagar
fe21b773e7
Day2: Afternoon - speaker note details and minor cosmetic changes. (#408)
* A few speaker notes in Day2: Afternoon and minor cosmetic changes.

* Do not test filesystem example code block.
2023-02-16 03:19:25 +00:00
Martin Geisler
f16b41f012
Further simplify Box diagrams (#409)
* Further simplify `Box` diagrams

I think we can improve the drawing by simplifying them and making them
more symbolic. Followup to #374.

* Apply suggestions from code review
2023-02-15 18:10:50 +00:00
Jan Wilken Dörrie
8e4bf245d3
Add Too Many Lists book to other resources (#410)
As suggested by @mgeisler in https://news.ycombinator.com/item?id=34092980. Wording taken from https://github.com/rust-unofficial/awesome-rust#resources.
2023-02-14 21:25:06 +00:00
Charisee Chiw
2436560e40
Let user know they can modify the tests, but do not need to. (#401) 2023-02-14 12:28:22 -08:00
Charisee Chiw
c06709838f
Update visibility.md (#403) 2023-02-14 12:24:32 -08:00
Charisee Chiw
cd79cc41a3
Remove code markers for compiler message (#402)
Follow up on comment in merged PR #360, working on issue #274
2023-02-14 20:22:49 +00:00
gendx
8dd5a78626
Clarify the Box layout diagrams. (#374) 2023-02-14 20:03:46 +01:00
Matt Smith
916c297d8c
Remove explicit typing in Mutex example (#405)
Example contained unnecessary explicit type info for the vector in Mutex v. Rust will magically do the needful conversions for us. Code looks cleaner/simpler without the explicit typing.
2023-02-14 18:40:22 +01:00
Charisee Chiw
2b1dc9ec66
Fix typo in args().next() (#400)
* Fix typo in args().next()

Follow up on #367

* Update match-expressions.md
2023-02-13 21:56:38 +00:00
Charisee Chiw
faaf2eacdc
Speaker Notes for hashmap.md (#295)
* Update hashmap.md

* Update hashmap.md

* Update hashmap.md

* Update src/std/hashmap.md

Co-authored-by: gendx <gendx@users.noreply.github.com>

* Update hashmap.md

* Wording

---------

Co-authored-by: gendx <gendx@users.noreply.github.com>
Co-authored-by: Andrew Walbran <qwandor@google.com>
2023-02-13 20:42:35 +00:00
Charisee Chiw
6f878dcf8f
Speaker Notes for tuple-structs (#197)
* Speaker Notes for tuple-structs

* Update tuple-structs.md
2023-02-13 16:31:15 +01:00
gendx
957f2a70f0
Add speaker notes for visibility. (#348) 2023-02-13 08:25:57 +00:00
Matt Smith
9fe0b68a2d
Fix an English grammatical typo (#386) 2023-02-10 15:53:27 +01:00
gendx
710fd526b4
Clarification in Trait Objects. (#379) 2023-02-09 21:51:08 +00:00
gendx
91eec89c52
Clarify that trait bounds give access to methods and add example of impl Trait. (#378) 2023-02-09 21:50:34 +00:00
gendx
f912825411
Add documentation links to the important traits. (#377)
* Add documentation links to the important traits.

* Also add links in the sub-pages.
2023-02-09 21:47:47 +00:00
gendx
fbb12161eb
Mention rc::Weak and add an example with a cycle in the speaker notes. (#375) 2023-02-09 21:46:40 +00:00
gendx
f9f04651ce
Add more example methods to Vec and HashMap. (#373) 2023-02-09 21:45:43 +00:00
Charisee Chiw
3a734230c9
Update visibility.md (#357) 2023-02-09 21:19:56 +00:00
Charisee Chiw
cf931075d5
Update destructuring-arrays.md (#369)
* Update destructuring-arrays.md

* Update destructuring-arrays.md
2023-02-09 13:17:33 -08:00
Charisee Chiw
6a1282c166
Update for-expressions.md (#359)
* Update for-expressions.md

* Update for-expressions.md

* Update for-expressions.md

* Fix formatting.

---------

Co-authored-by: Andrew Walbran <qwandor@google.com>
2023-02-09 21:17:15 +00:00
Charisee Chiw
65340c4ca1
Update match-expressions.md (#367)
* Update match-expressions.md

* Apply suggestions from code review

Fine tuning the casing and explanations.

---------

Co-authored-by: Martin Geisler <mgeisler@google.com>
2023-02-09 13:16:30 -08:00
Marko Zagar
36ce63cb10
Updates and minor fixes to Day 2: Morning (#372) 2023-02-09 21:15:47 +00:00
Charisee Chiw
e3b4b6a5c7
Update box.md (#363) 2023-02-09 20:55:19 +00:00
Charisee Chiw
736de71c7c
Update loop-expressions.md (#362)
* Update loop-expressions.md

* Update loop-expressions.md

* Fix formatting.

---------

Co-authored-by: Andrew Walbran <qwandor@google.com>
2023-02-09 20:52:37 +00:00
Charisee Chiw
1587d796cb
Update modules.md (#358)
* Update modules.md

* Update modules.md

* Fix capitalisation and formatting.

---------

Co-authored-by: Andrew Walbran <qwandor@google.com>
2023-02-09 20:50:43 +00:00
Charisee Chiw
426d7d91c2
Update points-polygons.md (#361) 2023-02-09 20:49:35 +00:00
Charisee Chiw
aa316544c3
Update box-recursive.md (#360) 2023-02-09 20:49:00 +00:00
Martin Geisler
c4bc10e31d
Inline variables printed with println! and friends (#315)
The course follows the style of inlining variable names where possible
in `println!` statements.
2023-02-09 07:48:18 +01:00
gendx
ce19841249
Add highly-unsafe speaker notes to inspect the memory layout of string. (#341) 2023-02-09 07:47:15 +01:00
Charisee Chiw
1835896e58
Speaker notes for destructuring-structs.md (#265)
* Update destructuring-structs.md

* Update destructuring-structs.md
2023-02-07 07:42:57 +00:00
Igor Petruk
ab831de1da
Suggesting to add Default to important traits. (#243)
* Suggesting to add `Default` to important traits.

This is a great trait to know about, it is used very often.

* Change `Implemented` to tuple struct.

It saves vertical space.
2023-02-06 20:17:21 +01:00
karthicktamil
fd82a95e85
Update welcome-day-1.md (#350)
Co-authored-by: Martin Geisler <mgeisler@google.com>
2023-02-06 18:47:53 +00:00
gendx
0be6f639bd
Add a totally-unsafe example to show the discriminant optimization of Options. (#345) 2023-02-06 17:41:54 +01:00
gendx
c3e3dc6020
Add speaker notes for pattern-matching/destructuring-arrays.md (#346) 2023-02-06 17:38:01 +01:00
Becker A
6361b2ed63
Update welcome-day-1.md (#349)
fix grammar typo
2023-02-06 07:34:55 +00:00
gendx
2e076cabe7
Reference mdbook installation instructions from running-the-course.md. (#329) 2023-02-03 15:52:06 +00:00
gendx
cc4509f90c
Add historical reference to the Rust 1.0 release. (#335) 2023-02-03 15:51:41 +00:00
gendx
bd98d03b44
Remove dangling links in cargo/rust-ecosystem.md. (#332) 2023-02-03 15:50:15 +00:00
gendx
ace97aaeb2
Fix typo in basic-syntax/variables.md. (#339) 2023-02-03 15:30:44 +00:00
gendx
b5518e9b16
Add a solution for day 1's bonus question with generics. (#338) 2023-02-03 15:29:49 +00:00
gendx
1936cd5c85
Mention that the syntax is similar to Java as well. (#337) 2023-02-03 15:28:38 +00:00
gendx
22d2bd36e4
Add reference to rustfmt for Debian instructions. (#331) 2023-02-03 15:18:03 +00:00
Andrew Gaul
f33b1f923a
Use f-string in example for consistency (#328)
Also fix typo.
2023-02-03 13:07:29 +00:00
Andrew Walbran
1be641203e
Split out example to separate page. (#319)
The example is quite long and so the page didn't easily fit on the
same screen as the explanation
2023-02-03 10:12:31 +00:00
Andrew Walbran
20f02db5f5
Add a cargo workspace containing both crates (#321)
* Move Cargo.toml for exercises to exercises directory.

* Create a workspace with both exercises and i18n-helpers.

* Build in CI as well as testing.

* Binaries must have a main function.

* No need for workspaces configuration for caching anymore.
2023-02-02 16:14:34 +00:00
Martin Geisler
a07bfa108f
Wrap long line of code (#312)
This line was too big to show during class.
2023-02-01 12:34:10 +01:00
Martin Geisler
476ee283c6
Simplify Vec slide (#313)
The code is probably meant to illustrate the `vec!` macro, but it
feels out of place when teaching: there is already enough material
here to get through.
2023-02-01 10:49:11 +01:00
Martin Geisler
d6182ea498
Fix missing word (#311) 2023-01-31 20:09:00 +00:00
Martin Geisler
c6a54ce9a9
Show the pair returned by duplicate (#314)
This makes it easier to talk about the code as you make changes to the
`duplicate` function.
2023-01-31 21:08:09 +01:00
Martin Geisler
dee5e654c8
Fix order of standard library slides (#310)
The slides now follow the order on the intro slide.
2023-01-31 15:04:17 -05:00
Frieder Bluemle
fd65ff0f0c
Fix JetBrains capitalization (#305)
* Fix JetBrains capitalization

* Revert change to da.po

---------

Co-authored-by: Martin Geisler <martin@geisler.net>
2023-01-31 19:45:54 +00:00
lodisy
330d21ef02 Update traits.md 2023-01-31 11:07:24 +00:00
Igor Petruk
100ee591ed
Update unsafe.md (#252)
* Update unsafe.md

Adding a paragraph explaining that unsafe code is not necessary broken or evil, but it is a mode
where compiler safety features are off.

* Move explanation to speaker notes

To avoid slide being too long. Also edited text slightly.

* Remove extra space

---------

Co-authored-by: Andrew Walbran <qwandor@google.com>
2023-01-30 13:12:51 +00:00
Charisee Chiw
601dc8258b
Speaker notes for vec.md (#296)
* Speaker notes for vec.md

* Fix grammar and formatting

* Fix formatting and spelling.

---------

Co-authored-by: Andrew Walbran <qwandor@google.com>
2023-01-30 11:56:30 +00:00
Charisee Chiw
49d24f89cf
Speaker notes for while-let-expressions.md (#294)
* Speaker notes for while-let-expressions.md

#274

* Update while-let-expressions.md

---------

Co-authored-by: Andrew Walbran <qwandor@google.com>
2023-01-30 11:47:56 +00:00
CodeMaster7000
31ae4ac56b
Rename LICENSE.txt to LICENSE (#293)
* Rename LICENSE.txt to LICENSE

* Update credits.md
2023-01-29 14:20:55 +01:00
focksor surooi
43c5344785
Fix typos (#297)
* fix typo in running-the-course.md

* Update modern.md
2023-01-29 11:54:51 +00:00
Mao Yufeng
49e06ffe03
Fix link to solution on Day 3 exercise (#299)
* fix day-3 solutions link

* Fix link description by making it singular

---------

Co-authored-by: Martin Geisler <martin@geisler.net>
2023-01-29 12:52:32 +01:00
Andrew Walbran
27b6165202 Implement Error. 2023-01-27 17:54:37 +00:00
Andrew Walbran
caaca140ca Another note for anyhow. 2023-01-27 17:54:37 +00:00
Andrew Walbran
79f5f0dade Add slide about Box<dyn Error> before introducing anyhow. 2023-01-27 17:54:37 +00:00
Andrew Walbran
e5c97e12cb No need for thiserror as well as anyhow. 2023-01-27 17:54:37 +00:00
Andrew Walbran
9fa0e89e90 It makes no sense to use both return and ?. 2023-01-27 17:54:37 +00:00
Andrew Walbran
52d28b155b Mention std::error::Error in speaker notes, and other useful traits. 2023-01-27 17:54:37 +00:00
Andrew Walbran
5dd87192e8 Mention that Send and Sync are unsafe traits. 2023-01-27 17:34:31 +00:00
Andrew Walbran
81cf02ffbe Fix typos and details. 2023-01-27 17:34:31 +00:00
Andrew Walbran
cc402a7788 Add some speaker notes to concurrency chapter. 2023-01-27 17:34:31 +00:00
Andrew Walbran
c066ab5664 Mention other ABI options. 2023-01-27 17:17:37 +00:00
Andrew Walbran
95c0447e4b Remove comment inside unsafe block.
Martin thinks the safety comment at the top is enough.
2023-01-27 17:17:37 +00:00
Andrew Walbran
facbac4601 Fix typo, and this is not specific to glibc. 2023-01-27 17:17:37 +00:00
Andrew Walbran
6e7916c29b Add a slide about writing unsafe functions. 2023-01-27 17:17:37 +00:00