Commit graph

430 commits

Author SHA1 Message Date
lionel-rowe 836134202e
feat(options2): better tests for layered_option
The existing test can be solved with the following:

```rs
        while let Some(integer) = optional_integers.pop() {
            assert_eq!(integer.unwrap(), range);
```

Similarly with `expect(...)`, `unwrap_or(0)`, `unwrap_or_default()`, etc. However, none of these solutions use the learning point of stacking `Option<T>`s.

The updated test can _only_ be solved by stacking `Option<T>`s:

```rs
        while let Some(Some(integer)) = optional_integers.pop() {
            assert_eq!(integer, cursor);
```

With the updated test, using `unwrap` or `expect` will panic when it hits the `None` value, and using `unwrap_or` or `unwrap_or_default` will cause the final `assert_eq!(cursor, 0)`  to panic.
2023-04-21 06:05:25 +01:00
liv 087e076ec0
Merge pull request #1384 from stornquist/patch-1
fix(move_semantics2): add expected output comment
2023-04-05 13:10:57 +00:00
liv ab6aa23cec
Merge pull request #1391 from ktheory/ktheory/iter5
docs: clarify instructions on iterators5.rs
2023-04-05 13:06:43 +00:00
liv 5fd3dfe01b
Merge pull request #1452 from guoard/markdown-linter
feat(docs): add markdown linter for exercises README.md files
2023-04-05 13:06:17 +00:00
poneciak 102d7f3d0e changed comments in tests
also fixed small logical issue in `Rectangle::new()` where u could create rectangle with width or height equals 0
2023-04-05 13:24:14 +02:00
poneciak c4974ac782 added required changes
- fixed grammar in hint and added more specific link
- added comments in test functions
- changed introduction paragraph
2023-04-05 13:09:13 +02:00
poneciak 27b7579566 created task 2023-04-05 08:18:51 +02:00
Alexandre ESSE 22bb662d3e fix(exercises): remove trailing spaces 2023-03-31 11:58:15 +02:00
Ali Afsharzadeh 382e16eb7e feat(docs): add markdown linter for exercises README.md files 2023-03-30 19:53:22 +03:30
Ali Afsharzadeh 1db646474e
docs(error_handling): resolve markdown linter warnings 2023-03-29 21:13:27 +03:30
liv 92f09dbe81
Merge pull request #1445 from guoard/patch-1
docs(variables): wrap mut keyword with backtick
2023-03-28 10:26:32 +00:00
liv e0e0b3f387
Merge pull request #1432 from ryanwhitehouse/main
docs:clarify instructions on hashmaps2.rs
2023-03-28 10:25:31 +00:00
Ali Afsharzadeh 592694036f
docs(variables): wrap mut keyword with backtick 2023-03-28 09:58:59 +03:30
liv 2012641610
Merge pull request #1428 from javihernant/changeLtReadme
change order of references in README.md
2023-03-26 13:23:02 +00:00
liv 864e741dd8 reword hashmaps2 a bit more 2023-03-26 15:21:21 +02:00
liv 6d4a87227d
Merge pull request #1437 from navicore/errors2-comment-error
correct comments in errors2.rs
2023-03-26 12:49:59 +00:00
Tom Kunc d5449c992e
feat(lifetimekata): Add info about Lifetimekata project 2023-03-25 20:00:28 +11:00
Ed Sweeney 4160b06c6c correct comments in errors2.rs 2023-03-24 21:52:58 -07:00
Ryan Whitehouse 5687676014 docs:clarify instructions on hashmaps2.rs 2023-03-20 15:19:36 +01:00
hxztnxt 5d91c86cf2 change order of references in README.md 2023-03-16 00:56:15 +01:00
Adam Brewer 7bab78c66d Rename iteration var names in vec2.rs for clarity
Resolves #1417
2023-03-10 14:13:06 -05:00
liv 36e66b545e
Merge pull request #1396 from 0lhi/main
fix(macros4.rs): Add rustfmt::skip to prevent auto-fix.
2023-02-26 13:10:24 +01:00
Chad Dougherty 8c88f769b6
rustfmt
rustfmt converts "main ()" -> "main()"
2023-02-24 08:51:03 -05:00
0lhi de24536187
macros4.rs: Add rustfmt::skip to prevent auto-fix.
The `macros4.rs` challenge can automatically be solved by rustfmt without the user noticing.

Adding `#[rustfmt::skip]` above the `macro_rules!` line fixes this issue.
2023-02-24 01:43:23 +01:00
Aaron Suggs 1ac66f372b docs: clarify instructions on iterators5.rs
I changed the sentence that referenced the imperative implementation in iterators5.rs.

That implementation was already removed and replaced with `todo!()`
2023-02-21 09:45:59 -05:00
Cyril MARPAUD 045d86aa42 refactor(arc1): improve readability by avoiding implicit dereference 2023-02-18 21:38:43 +01:00
Sebastian Törnquist fef8314d3d
fix(move_semantics2): add expected output comment
You can easily get this to compile with `vec0` being `[]` and `vec1` being `[22, 44, 66, 88]`
2023-02-18 18:43:34 +01:00
Gleb Shevchenko 238a496af5 fix: unify undisclosed type notation in errors5.rs 2023-02-18 14:09:04 +01:00
Daan Wynen bbdc5c6039 refactor(cow1): replace main with tests
Following the discussion in #1195 this is the best I could come up with.
The issue for me (and apparently a few other learners) was that the code
needed to complete the exercise was not _missing_, but was rather there
but wrong.

In the end, what made the difference between this exercise and others
(for me) was that in this exercise I was supposed to learn what to
*expect* of an output. So I think it makes sense here to let the learner
modify the tests and not the code itself.

Fixes #1195

Signed-off-by: Daan Wynen <black.puppydog@gmx.de>

# Conflicts:
#	info.toml
2023-02-14 20:37:33 +01:00
magnusrodseth 48ce9d2fd8 docs: add link to docs about iter_mut and map 2023-02-12 18:26:13 +01:00
liv f123cb2777
Merge pull request #1228 from grzegorz-zur/patch-1
Removed unnecessary use statement
2023-02-12 16:54:43 +01:00
liv 7be4fd891d
Merge pull request #1305 from platformer/issue1298
fix(threads1): make program panic if threads are not joined
2023-02-12 16:50:03 +01:00
liv b3de1b77bf
Merge pull request #1318 from kawaiiPlat/q2-minor-grammar
minor grammar tweak for quiz 2
2023-02-12 15:51:42 +01:00
liv 957522a492 feat(intro1): add note on rust-analyzer usage 2023-02-12 15:47:58 +01:00
Kevin Wan 4771a7b9e7
chore: fix prompt error
Missed a blank line, which causes the prompt incorrect like below:

```rust
You can keep working on this exercise,
or jump into the next one by removing the `I AM NOT DONE` comment:

 6 |  // Make this code compile by using the proper Rc primitives to express that the sun has multiple owners.
 7 |  
 8 |  // I AM NOT DONE
 9 |  use std::rc::Rc;
```
2023-01-23 12:16:51 +08:00
Jarrod Sanders 57834e9f8c
Minor Grammar 2023-01-03 09:22:52 -05:00
seporterfield 9860976af9
added existing chapter for clippy to mapping
It's real! https://doc.rust-lang.org/book/appendix-04-useful-development-tools.html
2023-01-01 02:34:58 +01:00
seporterfield b2b6e6900f
reformatted exercise->chapter mapping
Added and removed rows according to changes to exercise order and grouping.
2023-01-01 02:29:45 +01:00
seporterfield 66eaaf7b6e
fixed formatting 2023-01-01 02:17:53 +01:00
seporterfield 3fad2a9c83
gave smart_pointers its own README.md 2023-01-01 02:17:23 +01:00
seporterfield 8405a61b07
moved iterator exercises 2023-01-01 02:02:49 +01:00
seporterfield e3e298cfa2
moved iterator exercises 2023-01-01 02:02:15 +01:00
seporterfield 0f02a9b9af
moved iterator exercises 2023-01-01 02:00:36 +01:00
seporterfield 5b0d587c22
moved iterator exercises 2023-01-01 01:59:35 +01:00
seporterfield e9dc52c2d3
moved iterator exercises 2023-01-01 01:58:57 +01:00
seporterfield a0c5a892d3
refactoring standard_library_types as iterators 2023-01-01 01:58:04 +01:00
seporterfield a8fd315e09
moved rc to smart_pointers 2023-01-01 01:52:47 +01:00
seporterfield e8c4aab643
moved cow to smart_pointers 2023-01-01 01:52:05 +01:00
seporterfield c3bab88fda
moved box to smart_pointers 2023-01-01 01:51:27 +01:00
seporterfield 05592acf40
move arc to smart_pointers 2023-01-01 01:44:47 +01:00