1
0
Fork 0
mirror of https://github.com/notohh/rustlings.git synced 2024-12-20 15:38:09 -05:00
Commit graph

671 commits

Author SHA1 Message Date
mo8it
3d540ed946 modules3 solution 2024-06-22 13:35:54 +02:00
mo8it
98cd00de63 modules2 solution 2024-06-22 13:24:06 +02:00
mo8it
ecbe9b7324 modules1 solution 2024-06-22 13:12:39 +02:00
mo8it
879f0cd5c6 strings4 solution 2024-06-22 12:51:21 +02:00
mo8it
613ec23f84 strings 3 solution 2024-06-22 12:22:24 +02:00
mo8it
f574905b8e strings2 solution 2024-06-22 12:14:04 +02:00
mo8it
bd63ece47c string1 solution 2024-06-22 12:05:28 +02:00
mo8it
2901d85662 enums3 solution 2024-06-21 23:18:25 +02:00
mo8it
020711fa97 enums3 solution 2024-06-21 23:05:40 +02:00
mo8it
a2dfbd86da enums1 solution 2024-06-21 23:00:38 +02:00
mo8it
d6fd251a73 structs3 solution 2024-06-21 22:54:00 +02:00
mo8it
1264510fc0 structs2 solution 2024-06-21 22:31:06 +02:00
mo8it
ef842d3a94 structs1 solution 2024-06-21 22:22:37 +02:00
mo8it
d768353806 Fix typo 2024-06-21 18:29:00 +02:00
mo8it
e4dbbbf5f5 Remove move_semantics4, add rest of move_semantics solutions 2024-06-21 18:14:19 +02:00
mo8it
fd558065c7 move_semantics3 solution 2024-06-21 17:04:51 +02:00
mo8it
68142aff7f move_semantics2 solution 2024-06-21 17:02:50 +02:00
mo8it
946c29679e move_semantics1 solution 2024-06-21 16:16:52 +02:00
mo8it
835ec72622 vecs2 solution + significant change to have a better comparison between both methods 2024-06-21 14:52:11 +02:00
mo8it
a9f0c7bf1f vecs1 solution 2024-06-20 01:00:06 +02:00
mo8it
0abcdeed42 primitive_types6 solution 2024-06-19 14:25:29 +02:00
mo8it
532c9ebb30 primitive_types5 solution 2024-06-19 14:17:06 +02:00
mo8it
5bf8d1fa1b Fix typos 2024-06-14 13:32:37 +02:00
mo8it
98db579014 primitive_types4 solution 2024-06-08 23:42:15 +02:00
mo8it
0338b1cbdf primitive_types3 solution 2024-06-08 21:43:38 +02:00
mo8it
e1051724c3 primitive_types2 solution 2024-06-08 21:35:44 +02:00
mo8it
f8d38320cd Fix typos 2024-06-06 01:59:09 +02:00
mo8it
990c68efcb primitive_types1 solution 2024-05-25 16:31:21 +02:00
mo8it
f2c3dcab3a quiz1 solution 2024-05-22 16:35:57 +02:00
mo8it
73e84f8379 if3 solution 2024-05-22 15:54:35 +02:00
mo8it
eafb157d60 if2 solution 2024-05-22 15:16:50 +02:00
mo8it
7cdf6b7942 Add missing semicolons 2024-05-22 15:13:18 +02:00
mo8it
3bb71c6b0c Remove unneeded pub 2024-05-22 15:04:12 +02:00
mo8it
d0b843d6c4 Add solutions to functions 2024-05-21 02:43:18 +02:00
mo8it
0f4c42d54e Add solutions to intro and variables 2024-05-21 01:47:57 +02:00
mo8it
d2b5906be2 No more word input 2024-05-13 02:37:32 +02:00
mo8it
01509a2a84 Remove comma 2024-05-12 22:45:18 +02:00
allupeng
8c3b8dcec4 doc : add a dot in hashmaps1.rs file to fill e.g. 2024-04-29 14:18:04 +08:00
allupeng
881d3e9441 doc : add a dot in structs3.rs file 2024-04-28 18:03:22 +08:00
mo8it
de0befef9c Update intro1 2024-04-27 23:37:17 +02:00
mo8it
0a2d4dae5a Merge branch 'main' 2024-04-24 15:48:29 +02:00
mo8it
5349f0e8d4 Add README to the quizzes directory 2024-04-23 15:32:01 +02:00
mo8it
ad8e544483 Move quizzes 2024-04-22 01:07:36 +02:00
mo8it
2f810a4da6 Clean up and unify exercises 2024-04-17 23:34:27 +02:00
mo8it
cb9f1ac9ce Require a main function in all exercises 2024-04-17 22:46:21 +02:00
mo8it
5c0073a948 Tolerate changes in the state file 2024-04-14 01:15:43 +02:00
mo8it
686143100f Update intro1 2024-04-11 02:55:58 +02:00
mo8it
fa1f239a70 Remove "I AM NOT DONE" and the verify mode and add AppState 2024-04-11 02:51:02 +02:00
YunShu
f714534393
docs: add more info in threads
info.toml: 

```toml
[[exercises]]
name = "threads3"
path = "exercises/threads/threads3.rs"
mode = "test"
hint = """
An alternate way to handle concurrency between threads is to use
a mpsc (multiple producer, single consumer) channel to communicate.
With both a sending end and a receiving end, it's possible to
send values in one thread and receive them in another.
Multiple producers are possible by using clone() to create a duplicate
of the original sending end.
See https://doc.rust-lang.org/book/ch16-02-message-passing.html for more info.
"""
```

threads3'hint contains this link, so it should be placed in Further Information
2024-04-08 22:07:26 +08:00
liv
ca07abf3dc
Merge pull request from mo8it/threads2
threads2: simplify the exercise
2024-03-31 16:22:54 +02:00
Dan
30273a6ee5
Merge branch 'main' into main 2024-03-29 18:29:38 +00:00
Daniel Somerfield
62afbb034f Move test array to be in test module as vec 2024-03-27 20:37:19 -07:00
mo8it
842e341895 threads2: simplify threads2 2024-03-27 21:24:36 +01:00
Mo
c7cf3720bd
Merge pull request from NicolasRoelandt/patch-1
Remove confusing aside in 23_conversions/from_str.rs
2024-03-27 17:28:35 +01:00
wznmickey
dd72429af4 Merge remote-tracking branch 'origin/main' 2024-03-28 00:11:19 +08:00
wznmickey
92183a74c4 chore: update the chapter of macros 2024-03-28 00:06:16 +08:00
Mo
34d04139cd
Merge pull request from paul-leydier/chapters-table
docs: sort exercise to book chapter mapping by exercise
2024-03-27 16:59:52 +01:00
Dan Bond
f2833c5279
options1: Update wording & fix grammar
Signed-off-by: Dan Bond <danbond@protonmail.com>
2024-03-18 16:47:15 -07:00
liv
9c6f56b836
Merge pull request from mo8it/threads3
Remove unneeded Arc
2024-03-18 18:43:30 +01:00
mo8it
71700c506c Remove unneeded Arc 2024-03-18 01:12:37 +01:00
liv
14ca4e8197
Merge pull request from guizo792/guizo792
docs: Added comment for handling equal numbers in if/if1.rs `bigger` function
2024-03-15 20:56:38 +01:00
guizo792
ae69f423cd
Update exercises/03_if/if1.rs
Co-authored-by: liv <shadows@with.al>
2024-03-15 17:36:28 +00:00
liv
d8ecf4bc2d fix: clean up "return" wording in iterators4 2024-03-15 15:01:39 +01:00
liv
244ec8fbf2
Merge pull request from 0Ahmed-0/typos
chore: fix a minor typo
2024-03-15 14:40:19 +01:00
liv
a449d39bdc
Merge pull request from parnavh/main
Cleaned Up Unused Mutability
2024-03-15 14:38:58 +01:00
liv
76acf613c5
Merge branch 'main' into main 2024-03-15 14:36:23 +01:00
liv
31e7920cee
Merge pull request from evanmiller2112/main
Clarify language in hashmap3.rs (sum vs per match)
2024-03-15 14:32:12 +01:00
liv
32c19c2e47
Merge pull request from reifenrath-dev/main
chore: update from_into.rs task description to fit the code
2024-03-15 13:52:38 +01:00
liv
c46a711526 fix: revert from_into test change 2024-03-15 13:48:57 +01:00
Ahmed
098ff228d7 chore: fix a minor typo 2024-03-13 00:39:45 +00:00
Evan Miller
19b5e24d5c
Update hashmaps3.rs description for clarity
I struggled with this exercise and didn't understand that it was looking for a summary of goals scored/conceded per team, instead of per match.

My goal here is just to clarify the language, essentially saying "the total number of goals the team scored" to indicate that we are looking for a sum.

Updated the exercise description to clarify this point.

Relates loosely to closed issue https://github.com/rust-lang/rustlings/issues/1361
2024-03-04 10:38:09 -05:00
Guizoul
1da82a0eab docs: Added comment for handling equal numbers in if/if1.rs bigger function 2024-02-28 14:19:05 +01:00
LeverImmy
bcb192c707 chore: fixed minor typo 2024-02-04 10:51:06 +08:00
reifenrath-dev
b70ed105db chore: update from_into.rs task description to fit the code 2024-01-19 11:18:54 +01:00
Sergei Gerasenko
93aef73eb5 Correct for more standard English 2024-01-09 10:17:03 -06:00
Paul Leydier
5453fad991 docs: sort exercise to book chapter mapping by exercise 2023-12-18 21:16:18 -05:00
NicolasRoelandt
f35f63fa57
Remove confusing aside in 23_conversions/from_str.rs
The advice tell us how to return as String error message. Unless I missed something, we can't even return a String error message here, so this advice is more confusing than anything and should better be removed.
2023-12-08 17:52:21 +00:00
parnavh
21b1e6ecf8 fix(move_semantics): removed unused mut 2023-11-22 22:06:17 +05:30
Daniel Somerfield
8bfe2ec71e Fix all_fruits_types_in_basket to fail if all fruit kinds are not included 2023-11-21 14:02:26 -08:00
Matthias Richter
77b687d501 fix(enums) make enum variants more consistent
closes 
2023-11-14 08:19:40 +01:00
Bastian Pedersen
3461c4f73d
Reword clippy1 exercise to be more readable 2023-11-12 11:39:14 +01:00
Tristram Oaten
2ac6606c6c fix(intro2): changed intro2 to be a name error, not a format string error. 2023-10-20 17:31:56 +01:00
markgreene74
3545c5a7a4 fix(intro1.rs): typo in the exercise body 2023-10-16 22:53:21 +01:00
Adam Brewer
64d95837e9 Update Exercises Directory Names to Reflect Order 2023-10-16 07:37:12 -04:00
Matt Nield
642aac6f43
chore(errors2): minor description wording change
This commit makes a minor change in the wording of the description of the errors2 exercise to avoid potential confusion, changing:

"A player of the game will type in how many items they want to buy, and the `total_cost` function will calculate the total cost of the tokens."
to
"A player of the game will type in how many items they want to buy, and the `total_cost` function will calculate the total cost of the items."
2023-10-13 15:47:38 -04:00
Ofir Lauber
83ac243c00 chore: fix comment in enums3.rs 2023-09-21 01:54:11 +03:00
liv
170aaabe9b
Merge pull request from husjon/fix-enums3-formatting
Fixed formatting of `enums3` with rustfmt
2023-09-18 10:07:39 +02:00
liv
2e48fe9cc7
Merge pull request from jurglic/fix-rand-typo
fix: test name typo
2023-09-18 10:05:37 +02:00
Luka Krmpotic
eb84eaf151 remove hint comments when no hint exists 2023-09-15 22:29:55 +02:00
Jurglic
a0699bd917 fix: test name typo 2023-09-14 17:10:06 +02:00
Jon Erling Hustadnes
0ee9c5b776 Fixed formatting with rust-analyzer 2023-09-13 20:26:47 +02:00
liv
e12504a61d
Merge pull request from husjon/update-primitive_types3-requirement
Make `primitive_types3` require at least 100 elements
2023-09-09 14:58:14 +02:00
Oscar Bonilla
33a4f4e454 Fix compiler error and clarify instructions 2023-09-08 09:49:11 -07:00
Jon Erling Hustadnes
a5e4133516
Make primitive_types3 require at least 100 elements
Made the function panic if it's not long enough
2023-09-08 16:42:16 +02:00
liv
4d04aad890
Merge pull request from mo8it/move-semantics5-test
Convert exercises with assertions to tests
2023-09-06 09:31:46 +02:00
liv
992e5163d3
Merge pull request from pksadiq/fix-enum3-message-modification
fix(enums3): modify message string in test
2023-09-04 14:37:44 +02:00
liv
c57ad35e5b
Merge pull request from bean5/main
small changes to a few README files
2023-09-04 14:35:15 +02:00
liv
abc3013096
Merge pull request from rust-lang/fix/move-semantics-tests
fix: refactor move semantics 1-4 into tests
2023-09-04 14:32:01 +02:00
liv
51e237d5f9 fix: refactor move semantics 1-4 into tests 2023-09-04 14:29:06 +02:00
liv
849e4a3647
Merge pull request from szabgab/if1-test-case
add test-case to if/if1 to check equal values
2023-09-04 13:55:10 +02:00
liv
c177507db3
Merge pull request from jrcarl624/patch-1
Updated if3.rs: Added a note that states that the test does not need to be changed.
2023-09-04 13:54:20 +02:00
liv
a09a0c47ae fix: add extra line in if3 comment 2023-09-04 13:53:54 +02:00
liv
6378c2a81f
Merge pull request from mkovaxx/fix_1611
Fix 1611
2023-09-04 13:51:57 +02:00
liv
2d1da2ab57
Merge pull request from mo8it/prober-types-structs3
Use u32 instead of i32
2023-08-29 10:20:36 +02:00
mo8it
9c0581bc0f Use u32 instead of i32 2023-08-29 00:52:11 +02:00
mo8it
193b600382 Convert other exercises that have assertions to test mode 2023-08-27 01:06:01 +02:00
mo8it
16936d95d1 Fix typo 2023-08-27 00:50:35 +02:00
mo8it
64224d3918 Make move_semantics5 a test 2023-08-27 00:48:19 +02:00
Ivan Vasiunyk
fa0463b3b2
fix(errors1): change Result to Option in exersise description 2023-08-25 21:49:22 +02:00
Kevin C
ad1c29c512 Fix comment in errors2 2023-08-14 12:49:28 -07:00
Mate Kovacs
720f33eee6 add .to_mut() in test owned_mutation() 2023-08-10 19:56:47 +09:00
Alon Hearter
2691a35102
Fix from_into.rs tests 2023-08-07 18:22:49 +03:00
Joshua Carlson
828e724659
Added note related to tests. 2023-08-01 13:33:32 -04:00
Marcus Höjvall
be8d1df8b9
chore(errors4): improved comment 2023-07-28 23:05:01 +02:00
Alexander González
ef8f1f108b
docs: dedup repeated sentence 2023-07-21 14:42:19 +02:00
Gabor Szabo
7f9f897945 add test-case to if/if1 to check equal values 2023-07-20 08:28:18 +03:00
Joshua Carlson
287172698a added if3 based on: Using if in a let Statement 2023-07-03 14:52:13 -04:00
Anish
eacf7db6f3
refactor: Update comment to use correct construct name 'Result' instead of 'Option'
Refactor the comment in the code to provide a more accurate description of the construct being used. Replace the mention of Option with Result.
2023-06-23 17:18:17 +05:45
Mohammed Sadiq
c5231f0ce3 fix(enums3): modify message string in test
Otherwise it won't actually test the change of state.message and
it would fail to check if the user missed changing state.message

This happened to me as I had a catch-all line in `match`
2023-06-16 13:50:54 +05:30
liv
b44472b237
Merge branch 'main' into comment_cleanup 2023-06-12 12:39:02 +02:00
liv
171d20ce3e
Merge pull request from b-apperlo/b-apperlo-patch-1
feat: added test function to hashmaps2.rs
2023-06-12 12:20:36 +02:00
liv
974717ca11
Merge pull request from b-apperlo/b-apperlo-patch-2
fix: update hashmaps3.rs
2023-06-12 12:18:36 +02:00
liv
0d2a1bdef1
Merge pull request from IVIURRAY/enums3-message-test
fix(enums3): add test for message
2023-06-12 12:17:07 +02:00
liv
369ae2e63d feat(move_semantics2): rewrite hint 2023-06-12 12:07:18 +02:00
IVIURARY
d0a1783083 fix(enums3): add test for message
closes 
2023-06-08 22:14:25 +01:00
Bert Apperlo
a4fe3602b2
fix: updated comment for struct 2023-06-08 16:46:45 +02:00
Bert Apperlo
8974e33f69
fix: update hashmaps3.rs 2023-06-08 16:44:39 +02:00
Bert Apperlo
bbfb4c7e63
feat: added test function to hashmaps2.rs
The existing test functions only check if a kind of fruit exists in the hashmap, but not if the amount of fruits is higher than zero. This new test function solves this.
2023-06-08 15:49:07 +02:00
Robert Fry
7eef5d15ee
docs: cleanup the explanation paragraphs at the start of each exercise. 2023-05-29 18:41:51 +01:00
lazywalker
9604ab6621 fix(exercises): use snake_case variables 2023-05-23 15:00:55 +08:00
liv
656140d9e6
Merge pull request from Ben2917/improved_tests_for_iterators5
fix: Added some extra tests to validate iterators5 solution
2023-05-17 16:14:29 +02:00
liv
a6f99645c6 chore: rustfmt 2023-05-17 16:02:39 +02:00
liv
81cd97902a
Merge pull request from lionel-rowe/patch-1
feat(options2): better test for layered_option
2023-05-17 15:56:55 +02:00
Noah May
3ecb47ff2c fix(options3): panic when not matching to avoid false positives
Closes 
2023-05-09 15:13:18 -05:00
Aaron Wang
d3fea5f15a
Merge branch 'main' into patch-2 2023-05-01 19:10:56 -04:00
PiqqiDesigns
c4627e7112 chore: clarified cow owned_no_mutation comments 2023-04-27 15:49:40 -07:00
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
Alan Gerber
319a8253ba fix(move_semantics2): fix line number comment
Commit fef8314 added three lines of comments, which left the line
numbers expected to stay unchanged mentioned on line 2 out of date.
2023-04-20 12:15:31 -04:00
Your Name
352267871c fix: Added some extra tests to validate iterators5 solution
closes: 
2023-04-15 17:34:52 +01:00
bean5
15ae83f868 docs: Replace apostrophe (for consistency with other README files) 2023-04-13 20:32:18 -06:00
Aaron Wang
8ed2cf7ef5
Update move_semantics2.rs 2023-04-10 22:36:21 -04:00
Aaron Wang
c74e0bfd18
docs: update line numbers in move_semantics2 2023-04-07 01:56:20 -04:00
liv
087e076ec0
Merge pull request from stornquist/patch-1
fix(move_semantics2): add expected output comment
2023-04-05 13:10:57 +00:00
liv
ab6aa23cec
Merge pull request from ktheory/ktheory/iter5
docs: clarify instructions on iterators5.rs
2023-04-05 13:06:43 +00:00
liv
5fd3dfe01b
Merge pull request 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