Leonardo Freua
5e7eac6be6
Merge branch 'main' of https://github.com/rust-lang/rustlings
2021-12-23 22:57:21 -03:00
Franklin van Nes
f2650de369
fix(clippy1): Updated code to test correctness clippy lint with approx_constant lint rule
...
closes #888
2021-12-15 11:46:27 -05:00
Leonardo Freua
4a77ce2f18
Merge branch 'main' of https://github.com/rust-lang/rustlings
2021-11-09 11:40:52 -03:00
Michael Walsh
d1ee2daf14
fix(structs3.rs): assigned value to cents_per_gram in test
...
Intended to simplify the lesson by removing the need to figure out what the value is meant to be based on the tests.
Previous commits (9ca08b8f2b and 114b54cbdb (diff-ce1c232ff0ddaff909351bb84cb5bff423b5b9e04f21fd4db7ffe443e598e174) ) removed the mathematical complexity, and I feel this addition is a needed change to further streamline the exercise.
2021-10-30 16:55:58 -06:00
xuesong
1663a16ead
fix(traits1): rename test functions to snake case ( #854 )
...
Co-authored-by: zhangshaozhi <zhangshaozhi@ZhangshaozhideMacBook-Pro.local>
2021-10-18 13:57:12 +02:00
Leonardo Freua
f57cd50647
Solve quiz3.
2021-10-13 17:28:54 -03:00
Leonardo Freua
f6c67371e8
Solve tests exercises
2021-10-13 17:26:29 -03:00
Leonardo Freua
cd95afa824
Solve traits exercises
2021-10-11 21:44:34 -03:00
Leonardo Freua
4b4c1db220
Solve options exercises
2021-10-11 21:24:11 -03:00
Leonardo Freua
d84d32c196
Solve generics exercises.
2021-10-11 21:24:11 -03:00
Leonardo Freua
e370507709
Solve error handling exercises.
2021-10-11 21:24:11 -03:00
Leonardo Freua
846295d87e
Solve quiz2.
2021-10-11 21:24:11 -03:00
Leonardo Freua
7c0ba9dd4e
Solve quiz1.
2021-10-11 21:24:09 -03:00
Leonardo Freua
48f4ea1a66
Solve collection exercises.
2021-10-11 21:23:22 -03:00
Leonardo Freua
5a400bd537
Solve enum exercises.
2021-10-11 21:23:22 -03:00
Leonardo Freua
393a97cba1
Solve function exercises.
2021-10-11 21:23:22 -03:00
Leonardo Freua
8c94196669
Solve struct exercises.
2021-10-11 21:23:22 -03:00
Leonardo Freua
4225486f4f
Solve modules exercises.
2021-10-11 21:23:22 -03:00
Leonardo Freua
1d906f8d0a
Solve if exercises.
2021-10-11 21:23:22 -03:00
Leonardo Freua
f2e63bb0c0
Solve move semantics exercises.
2021-10-11 21:23:17 -03:00
Leonardo Freua
6985a74098
Solve primitive types exercises.
2021-10-11 21:21:52 -03:00
Leonardo Freua
21a5bb921b
Solve string exercises.
2021-10-11 21:21:52 -03:00
Leonardo Freua
2315a84f41
Solve variable exercises.
2021-10-11 21:21:52 -03:00
Fredrik Enestad
46c28d5cef
fix(move_semantics5): correct typo ( #857 )
2021-09-30 10:18:36 +02:00
Zhenghao Lu
bf33829da2
fix(structs3): remove redundant 'return' ( #852 )
2021-09-27 10:03:28 +02:00
diannasoriel
c2ed98deb3
Merge pull request #781 from tlyu/advanced-errs
...
feature: advanced errors
2021-09-25 11:18:55 +02:00
Taylor Yu
abd6b70c72
feat: add advanced_errs2
...
New exercise to demonstrate traits that make it easier for other code
to consume our custom error types.
2021-09-25 11:18:23 +02:00
Taylor Yu
882d535ba8
feat: add advanced_errs1
...
New section and exercise to demonstrate the `From` trait for errors
and its usefulness with the `?` operator.
2021-09-25 11:18:21 +02:00
frogtd
d75759e829
fix(move_semantics5): change &mut *y to &mut x ( #814 )
...
Instead of having to explain why
```rs
let mut x = 100;
let y = &mut x;
let mut z_owned = *y;
let z = &mut z_owned;
*y += 100;
*z += 1000;
```
and
```rs
let mut x = 100;
let y = &mut x;
let z = &mut *y;
*y += 100;
*z += 1000;
```
are different, you still get the point across about having only one mutable reference.
As it stands, this exercise does too much (dereferencing and having only one mutable reference), and by doing so confuses people.
Example of someone being confused by this:
<https://discord.com/channels/273534239310479360/273541522815713281/872689531428692040 >
2021-09-25 10:52:18 +02:00
Weilet
0a11bad714
feat(quiz1): add default function name in comment ( #838 )
2021-09-21 10:43:44 +02:00
granddaifuku
1c3beb0a59
fix(modules2): fix typo ( #835 )
2021-09-06 16:32:39 +02:00
anuk909
dfd2fab4f3
feat(modules): update exercises, add modules3 ( #822 )
...
Co-authored-by: diannasoriel <mokou@fastmail.com>
2021-09-03 10:41:12 +02:00
diannasoriel
96fc301764
chore(quiz1): revert wording
2021-08-26 10:30:18 +02:00
Damian
03131a3d35
fix(quiz1): Fix inconsistent wording ( #826 )
...
The second test expects the function to return 80 when there is an order of 40 apples, but the current wording implies returning 40 will pass as well
2021-08-24 10:48:51 +02:00
ana
df25684cb7
fix(move_semantics5): Clarify instructions
2021-07-29 12:37:15 +02:00
fmoko
8e313cffaa
Merge pull request #732 from apogeeoak/iterators5
...
chore(iterators5): Minor formatting improvements.
2021-07-09 12:24:42 +02:00
fmoko
6948905716
Merge pull request #737 from ghost/correct-small-typo
...
Correct small typo in exercises/conversions/from_str.rs
2021-07-08 11:07:21 +02:00
Rakshit Sinha
d876649616
fix(quiz1): Updated question description ( #794 )
...
Co-authored-by: Rakshit Sinha <rakshit.sinha@oracle.com>
2021-07-07 22:18:33 +02:00
lauralindzey
8774e47dc3
docs: Update collections README with HashMap link
2021-07-06 01:31:27 -07:00
Laura Lindzey
e422ab1507
docs: Update exercise to chapter mapping for HashMap
2021-07-05 23:07:34 -07:00
Taylor Yu
2dc93cadda
fix(from_str, try_from_into): custom error types
...
Remove the use of trait objects as errors from `from_str` and
`try_from_into`; they seem to have caused a lot of confusion in
practice. (Also, it's considered best practice to use custom error
types instead of boxed errors in library code.) Instead, use custom
error enums, and update hints accordingly. Hints also provide
some guidance about converting errors, which could be covered
more completely in a future advanced errors section.
Also move from_str to directly after the similar exercise `from_into`,
for the sake of familiarity when solving.
2021-06-24 21:33:41 -05:00
marisa
a3ea37b76e
Merge pull request #771 from tlyu/iterators5-trait-tweak
...
fix(iterators5): derive Clone, Copy
2021-06-24 14:17:05 +02:00
marisa
ec63cadadb
Merge pull request #772 from tlyu/errors-rework
...
feature: improve error_handling exercises
2021-06-24 14:12:34 +02:00
Taylor Yu
b7ddd09fab
address review feedback
...
Adjust error text and naming to conform with best practices.
Use `map_err()` instead of `or()`. Wrap lower-level errors instead of
ignoring their details.
Also, don't "cheat" by bypassing the `new()` function in tests.
Fix a dangling reference in the try_from_into hints.
2021-06-09 23:27:53 -05:00
ZC
48ffcbd2c4
fix(variables5): confine the answer further
...
let mut number = 3; can lead to a correct answer, so the comment helps to direct the users to the intended answer.
2021-06-07 18:22:55 +08:00
Taylor Yu
68d3ac567c
feature: improve error_handling exercises
...
Add new exercises errors5 and errors6, to introduce boxed errors and
custom error enums more gently. Delete errorsn, because it tried to do
too much too soon.
2021-06-06 23:08:57 -05:00
Taylor Yu
50ab289da6
fix: rename result1 to errors4
...
Also put it in the ERROR HANDLING section where it probably belongs.
2021-06-06 23:08:54 -05:00
Taylor Yu
91fc9e3118
fix(iterators5): derive Clone, Copy
...
To allow more flexibility in solutions, derive `Clone` and `Copy`
for `Progress`.
2021-06-06 17:38:02 -05:00
Taylor Yu
1b85828548
fix: move_semantics5 hints
...
Improve the hints for move_semantics5, as well as the explanatory
comments in the code.
Previously, it was not clear what possible changes were allowed.
It seems that reordering the statements might be the intended solution.
The previous comment about not "adding newlines" doesn't make sense,
so treating it as "adding new lines" makes it more clear.
2021-05-22 22:09:58 -05:00
Sateesh
399ab328d8
feat: Add move_semantics5 exercise. ( #746 )
...
* feat: Add move_semantics5 exercise.
* feat: Add option3 exercise
* Address review comments. Fix typos, sentence formatting.
* Remove unwanted newline.
* Address review comments: make comment inline, fix format in print.
2021-05-17 14:10:40 +02:00