公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
公式ドキュメント
https://www.rust-lang.org/learn
Web上の実行環境
https://play.rust-lang.org
※Rustを学びたい人はまず最初に公式のThe Bookを読むこと
https://doc.rust-lang.org/book/
※Rustを学ぶ際に犯しがちな12の過ち
https://dystroy.org/blog/how-not-to-learn-rust
※Rustのasyncについて知りたければ「async-book」は必読
https://rust-lang.github.io/async-book/
※次スレは原則>>980が立てること
前スレ
Rust part19
https://mevius.5ch.net/test/read.cgi/tech/1673926892/
ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.net/test/read.cgi/tech/1514107621/
Rust part20
■ このスレッドは過去ログ倉庫に格納されています
2023/03/03(金) 00:45:28.73ID:vTVY069B
2023/03/08(水) 13:00:40.45ID:AVy9425f
>>57
推奨も非推奨もしていないと推奨していないは別なんですが...
推奨も非推奨もしていないと推奨していないは別なんですが...
2023/03/08(水) 13:32:34.88ID:lVG18cq8
今気付いたけど本家のThe Bookから正式に日本語版を含む各言語版のレポジトリへリンクが張られてるんだね
https://doc.rust-lang.org/book/appendix-06-translation.html
日本語版の各セクションの更新日を見てみたら
https://github.com/rust-lang-ja/book-ja/tree/master-ja/src
数ヶ月前がいくつかあるから更新されてるんじゃない?
https://doc.rust-lang.org/book/appendix-06-translation.html
日本語版の各セクションの更新日を見てみたら
https://github.com/rust-lang-ja/book-ja/tree/master-ja/src
数ヶ月前がいくつかあるから更新されてるんじゃない?
2023/03/08(水) 14:23:51.90ID:GIrZN4Te
複オジは非公式翻訳を
公式からリンクされてるという理由で
公式な日本語訳と偽っていた罪を償うのが先
嘘つきの言うことは誰も信用しない
公式からリンクされてるという理由で
公式な日本語訳と偽っていた罪を償うのが先
嘘つきの言うことは誰も信用しない
2023/03/08(水) 14:28:59.70ID:MGmZ5+PV
2023/03/08(水) 14:38:17.99ID:k26S3184
評判の悪い日本語訳で勉強するより公式でやったほうがいいのは当然だよな
反対する理由は見当たらない
反対する理由は見当たらない
63デフォルトの名無しさん
2023/03/08(水) 14:49:29.41ID:yw6CL/M82023/03/08(水) 15:29:08.93ID:xMERxfms
非公式おじさん涙目ワロw
2023/03/08(水) 17:16:33.70ID:YxWGdUuX
結局、足を引っ張るだけの無能は口だけ番長ということでいいのかね。
githubの日本語訳リポジトリに改善版のプルリクエスト出して貢献すりゃいいのに。
githubの日本語訳リポジトリに改善版のプルリクエスト出して貢献すりゃいいのに。
2023/03/08(水) 17:43:46.69ID:VNQhgWjd
2023/03/08(水) 17:49:07.09ID:WJ2h17EM
まだ件のAIで翻訳は無理なのか
2023/03/08(水) 18:03:44.14ID:dhvL467/
なんか頑張って擁護してる人は日本語版が古くないっていう根拠全く示せてないよね?
2023/03/08(水) 18:11:20.27ID:K08tGqYA
事実を書くと足を引っ張るだけの無能になるらしい
GitHub のリポジトリに Issue も PR もいくつかあるけど放置されてるじゃん
GitHub のリポジトリに Issue も PR もいくつかあるけど放置されてるじゃん
2023/03/08(水) 18:21:29.08ID:DM+uPewN
>>37の案でok
日本語版の問題点の話ばっかりでこれ以上スレ消費しても仕方ない気がする
日本語版の問題点の話ばっかりでこれ以上スレ消費しても仕方ない気がする
2023/03/08(水) 18:27:52.80ID:BrWt4HZU
2023/03/08(水) 19:27:32.79ID:mW0hpgEv
>>69
ならメンテナに立候補すりゃいいんじゃない?
ならメンテナに立候補すりゃいいんじゃない?
2023/03/08(水) 20:56:54.94ID:+7TMvH3q
もしかしてメンテナご本人?
2023/03/08(水) 22:28:52.95ID:cNf5UxLu
日本語版に問題がある
→じゃお前がPR送れ
IssueもPRも放置されてる
→じゃお前がメンテナやれ
なんなのこれ
こんなのが関係者にいるんなら改善される見込みゼロでしょ
→じゃお前がPR送れ
IssueもPRも放置されてる
→じゃお前がメンテナやれ
なんなのこれ
こんなのが関係者にいるんなら改善される見込みゼロでしょ
2023/03/08(水) 22:29:48.23ID:RPZ0ODVG
ここの皆Rust大好きな筈なのに日本語コミュニティに貢献の痕跡がないってやばない?
2023/03/08(水) 23:02:50.55ID:ijMIMHq8
非公式日本語翻訳には手を出さないよう
積極的に初心者を啓蒙するのが
日本のRustコミュニティにとっての最善手
積極的に初心者を啓蒙するのが
日本のRustコミュニティにとっての最善手
2023/03/09(木) 00:46:37.28ID:ehuwCZc+
>>75
今や匿名じゃないと困っちゃう人の巣窟ですからね
今や匿名じゃないと困っちゃう人の巣窟ですからね
2023/03/09(木) 01:16:43.58ID:Z9xocO1d
常駐してるアンチRustによる妨害連投だろ
何でも文句をつけてRustの足を引っ張ることが目的
日本語版の件も同じ
何でも文句をつけてRustの足を引っ張ることが目的
日本語版の件も同じ
2023/03/09(木) 02:21:45.87ID:ehuwCZc+
そして>>69に戻る
2023/03/09(木) 08:46:28.38ID:NWRX1mim
2023/03/09(木) 09:02:51.43ID:3zbp+azX
Rustアンチを見分けるのは簡単
今までどの話でも「改善案や代替案を出したり協力したり」せずに「批判したり言いがかりをつけたり潰そうとしたりする」
今回の話も同様
もし仮に具体的に深刻な問題があるならば改善する方向へ動けばよいだけの話
今までどの話でも「改善案や代替案を出したり協力したり」せずに「批判したり言いがかりをつけたり潰そうとしたりする」
今回の話も同様
もし仮に具体的に深刻な問題があるならば改善する方向へ動けばよいだけの話
2023/03/09(木) 09:14:52.26ID:bx/t5YIt
2023/03/09(木) 09:20:15.59ID:0a1GOjgJ
> 「批判したり言いがかりをつけたり潰そうとしたりする」
確かに日本語版の問題点が指摘されると
とにかく言いがかりをつけて潰そうとする人がいるね
確かに日本語版の問題点が指摘されると
とにかく言いがかりをつけて潰そうとする人がいるね
2023/03/09(木) 09:27:52.51ID:pceol7Cc
誤訳も放置
イシューも放置
プルリク来るけど知らんぷり
文句言うな
お前がやれ
今日も5chをぐーるぐる
オラこんなリポいやだ
オラこんなリポいやだ
イシューも放置
プルリク来るけど知らんぷり
文句言うな
お前がやれ
今日も5chをぐーるぐる
オラこんなリポいやだ
オラこんなリポいやだ
2023/03/09(木) 09:41:16.94ID:cLGdo+Dg
2023/03/09(木) 09:41:31.57ID:5eT48dzr
本家にある程度追いついてて誤訳があるとか未訳があるなら貢献しやすいけどそうじゃないからなぁ
まずはそこまでメンテナー側でやってくれたら貢献する人も現れるんじゃない?
まずはそこまでメンテナー側でやってくれたら貢献する人も現れるんじゃない?
2023/03/09(木) 09:42:37.79ID:ch2FekEs
>>84
草
草
2023/03/09(木) 09:51:30.09ID:MrYHSR72
Rustアンチは具体的に日本語版Bookのどの章のどの節にどういう問題があって改善案がどうなのかを言えない
RustアンチはRustやその普及を潰すことだけを目標にしている
RustアンチはRustやその普及を潰すことだけを目標にしている
2023/03/09(木) 09:56:19.19ID:5eT48dzr
2023/03/09(木) 09:56:38.71ID:bUyZbGMm
2023/03/09(木) 10:05:17.42ID:DF6AT3du
Rustコミュニティに貢献しても
非公式翻訳版の品質改善のために
PR出さずに批判するやつは全員アンチ扱い
非公式翻訳版の品質改善のために
PR出さずに批判するやつは全員アンチ扱い
2023/03/09(木) 10:07:21.23ID:fiidGuJR
>>89
オジ恥
オジ恥
2023/03/09(木) 10:20:37.62ID:5eT48dzr
>>92
事実に対して反論できず捨て台詞を吐くだけなら何も書かないほうがいいと思います
事実に対して反論できず捨て台詞を吐くだけなら何も書かないほうがいいと思います
2023/03/09(木) 10:26:46.29ID:0ZUHbZyh
2023/03/09(木) 10:39:22.78ID:JRh3xELi
もしかしてforkしてブランチ切る程度のこともやってないわけ?
ちょっと信じられないんだが
ちょっと信じられないんだが
2023/03/09(木) 10:45:17.46ID:dzdLgXqT
>>95
プルリク出しても無視されることが分かってるのに修正する気になるわけないじゃん
プルリク出しても無視されることが分かってるのに修正する気になるわけないじゃん
2023/03/09(木) 10:51:11.72ID:tzQKIk8q
日本語版には問題があるから英語版を使ったほうがいいという意見に対して
批判するならイシューやプルリク出せというのは論点のすり替え
批判するならイシューやプルリク出せというのは論点のすり替え
2023/03/09(木) 10:57:51.77ID:Nh0+4dpq
日本語版を潰すことだけに力を入れてるのかー
マジでアンチじゃん
マジでアンチじゃん
2023/03/09(木) 11:02:16.65ID:ehuwCZc+
全員単発
応仁の乱
応仁の乱
100デフォルトの名無しさん
2023/03/09(木) 11:02:36.11ID:5eT48dzr 問題点・改善点をあげてもアンチ乙で片付けられるんだから無敵だな
101デフォルトの名無しさん
2023/03/09(木) 11:36:59.36ID:I6UUv7Kk102デフォルトの名無しさん
2023/03/09(木) 11:41:54.63ID:vunFCsf3 まぁ実際のところ日本語版を読みたい初心者がこんなスレに来るわけないし
このスレのローカルルールとしては>>37でいいと思うけどな
もし日本語版を本気でどうにかしたい人がいるならその議論はzuilpなりGitHubのissueでやればいい
このスレのローカルルールとしては>>37でいいと思うけどな
もし日本語版を本気でどうにかしたい人がいるならその議論はzuilpなりGitHubのissueでやればいい
103デフォルトの名無しさん
2023/03/09(木) 11:59:25.10ID:IPNUA449104デフォルトの名無しさん
2023/03/09(木) 11:59:38.63ID:Js3muVMH10596,103
2023/03/09(木) 12:07:13.82ID:NxdTjqu4 もしもしはすぐID変わるからダメだな
これじゃIDコロコロするやつと変わんねぇよ
これじゃIDコロコロするやつと変わんねぇよ
106デフォルトの名無しさん
2023/03/09(木) 12:23:44.08ID:WMBmvI2V107デフォルトの名無しさん
2023/03/09(木) 12:53:07.30ID:vunFCsf3108デフォルトの名無しさん
2023/03/09(木) 13:38:49.60ID:tfi/zejU >>102
同意
同意
109デフォルトの名無しさん
2023/03/09(木) 13:56:08.35ID:qMTKidpI 5chの1スレで扱わなくなると殲滅されてしまうよう物なら
近いうちに自然淘汰されるだけだから
ここでは扱わないのが正解ということになる
近いうちに自然淘汰されるだけだから
ここでは扱わないのが正解ということになる
110デフォルトの名無しさん
2023/03/09(木) 14:02:00.14ID:KrFX8l8a 傍から見てるだけだけどさ
わざわざ日本語版を排除しようというのはアンチにしか生じない動機・感情よね
わざわざ日本語版を排除しようというのはアンチにしか生じない動機・感情よね
111デフォルトの名無しさん
2023/03/09(木) 14:10:10.57ID:WYfWQgCO 不正確なもんは排除しとくほうがマシ
それを許して欲しいと言う甘えは通用しない
所有権の複製とかいう用語が世間で通用しないのと同じ
それを許して欲しいと言う甘えは通用しない
所有権の複製とかいう用語が世間で通用しないのと同じ
112デフォルトの名無しさん
2023/03/09(木) 14:12:34.91ID:za1QZKNx 更新が英語版のmainに追い付いたらテンプレに戻すという条件付き除外措置なら誰も文句無いですか?
113デフォルトの名無しさん
2023/03/09(木) 14:13:47.86ID:KrFX8l8a 日本語版で不正確なところはどこなの?
所有権??
所有権??
114デフォルトの名無しさん
2023/03/09(木) 14:16:43.77ID:lc0skjdv 総務省の公文書のことか
115デフォルトの名無しさん
2023/03/09(木) 14:47:46.87ID:WYfWQgCO Rustアンチっていう表現がそもそも疑問なんよね
単にここじゃあ複オジが馬鹿にされてたり
rust-jpに疑問が持たれてたりするだけであって
それがなぜだか
ある人にとっては「Rustアンチ」ってことにすり替わっちゃう
単にここじゃあ複オジが馬鹿にされてたり
rust-jpに疑問が持たれてたりするだけであって
それがなぜだか
ある人にとっては「Rustアンチ」ってことにすり替わっちゃう
116デフォルトの名無しさん
2023/03/09(木) 14:50:24.91ID:TbSLyHqM117デフォルトの名無しさん
2023/03/09(木) 14:51:04.12ID:yQuaEoeh cargoを使用していると、過去のクレートのキャッシュ?なのかなんなのかわからないものがどんどん溜まっていってしまいます
これって使い続けるとどこまでも増えていってしまうのですか?何か容量を抑える策はあるのでしょうか?
SSDがしょぼいので気になってしまいます
これって使い続けるとどこまでも増えていってしまうのですか?何か容量を抑える策はあるのでしょうか?
SSDがしょぼいので気になってしまいます
118デフォルトの名無しさん
2023/03/09(木) 14:52:40.57ID:5eT48dzr >>117
cargo clean
cargo clean
119デフォルトの名無しさん
2023/03/09(木) 15:28:35.84ID:SZrfwfYj 会話や議論のベースとするには信頼が置けないというのが最大の理由でしょ
だからこのスレでは信頼のおける公式The Bookを使うローカルルールにするというだけのこと
日本語版の問題箇所を一つ一つ具体的にあげて改善していくためのスレじゃないんだからそれをやりたい人は>>102が言うようにzuilpなりGitHubでやるのが適切
だからこのスレでは信頼のおける公式The Bookを使うローカルルールにするというだけのこと
日本語版の問題箇所を一つ一つ具体的にあげて改善していくためのスレじゃないんだからそれをやりたい人は>>102が言うようにzuilpなりGitHubでやるのが適切
120デフォルトの名無しさん
2023/03/09(木) 15:45:47.39ID:hrQLf9QV アンチというレッテル貼りしてるだけの人の動機は何なんだろう?
121デフォルトの名無しさん
2023/03/09(木) 15:53:09.08ID:RjLT18Ud122デフォルトの名無しさん
2023/03/09(木) 16:11:36.62ID:od/fqKtF バカが2人に増えたね
信者複製おじさんと謎のrust-jp陰謀論おじさん
地獄
信者複製おじさんと謎のrust-jp陰謀論おじさん
地獄
123デフォルトの名無しさん
2023/03/09(木) 18:38:23.80ID:wqVFkatU Bookの日本語版を一通り読んでみたけど特に間違ったことはなさげ
訳語は一部意見割れるかもしれないけど不可はない感じ
ネット上の日本語のRust入門としてベストじゃないかな
訳語は一部意見割れるかもしれないけど不可はない感じ
ネット上の日本語のRust入門としてベストじゃないかな
124デフォルトの名無しさん
2023/03/09(木) 18:53:24.39ID:1oUy2fzR え、内容が古いことは無視ですか?
125デフォルトの名無しさん
2023/03/09(木) 19:03:49.80ID:wqVFkatU なにか古くて間違ってるようなことなかったと思うよ
126デフォルトの名無しさん
2023/03/09(木) 20:59:36.65ID:5eT48dzr127デフォルトの名無しさん
2023/03/09(木) 22:00:09.63ID:TpJxaXq0128デフォルトの名無しさん
2023/03/09(木) 22:25:18.34ID:5eT48dzr >>127
Box 使用箇所は本家では直ってるところだからここだけ言ってもしょうがないよ
> 間違ってるから優先して直してって言えば対応してくれる
issue,pr は何個かあるけどどれも放置だから無駄だよ
Box 使用箇所は本家では直ってるところだからここだけ言ってもしょうがないよ
> 間違ってるから優先して直してって言えば対応してくれる
issue,pr は何個かあるけどどれも放置だから無駄だよ
129デフォルトの名無しさん
2023/03/09(木) 22:28:14.00ID:Qg5Vw7uS130デフォルトの名無しさん
2023/03/09(木) 23:01:25.11ID:bker4XmI じゃスルーしてたlet-else話でもするか
>>19のリンクに書いてあるlet-elseのリファクタリングってあり?
Afterでもダメってほどじゃないが俺はBeforeのほうがいいように思える
//Before
pub async fn close(&mut self) -> Result<()> {
if let Some(mut file) = self.file.take() {
debug!("File {} closed", self.filename());
file.flush().await?;
}
Ok(())
}
//After
pub async fn close(&mut self) -> Result<()> {
let Some(mut file) = self.file.take() else {
return Ok(());
};
debug!("File {} closed", self.filename());
file.flush().await
}
>>19のリンクに書いてあるlet-elseのリファクタリングってあり?
Afterでもダメってほどじゃないが俺はBeforeのほうがいいように思える
//Before
pub async fn close(&mut self) -> Result<()> {
if let Some(mut file) = self.file.take() {
debug!("File {} closed", self.filename());
file.flush().await?;
}
Ok(())
}
//After
pub async fn close(&mut self) -> Result<()> {
let Some(mut file) = self.file.take() else {
return Ok(());
};
debug!("File {} closed", self.filename());
file.flush().await
}
131デフォルトの名無しさん
2023/03/09(木) 23:19:16.56ID:17jElPHd132デフォルトの名無しさん
2023/03/10(金) 07:39:28.49ID:eGAweG+/133デフォルトの名無しさん
2023/03/10(金) 12:26:56.89ID:5qa3scwI134デフォルトの名無しさん
2023/03/10(金) 13:39:34.28ID:YUaQrZ1H >>130
その2つならif letバージョンの方が読みやすいね
その2つならif letバージョンの方が読みやすいね
135デフォルトの名無しさん
2023/03/10(金) 17:33:37.91ID:THb1tZPF >>130
前者だな
Okでも違う値を返すようになったりネストが深くなったりした段階でリファクタリングを考慮すれば十分
その例ではtake、flush、dropの一連のつながりを切るほどのメリットが全くない
あと後者はfile.flush.await.into()にする必要があるかもしれない
前者だな
Okでも違う値を返すようになったりネストが深くなったりした段階でリファクタリングを考慮すれば十分
その例ではtake、flush、dropの一連のつながりを切るほどのメリットが全くない
あと後者はfile.flush.await.into()にする必要があるかもしれない
136デフォルトの名無しさん
2023/03/10(金) 17:46:09.19ID:Lf3CpR6K137はちみつ餃子 ◆8X2XSCHEME
2023/03/10(金) 17:46:47.36ID:wtzqTKjF >>130
私も前者だと思う。
見通しが特に悪くなるほど複雑な場合でないならやろうとしていることがそのままコードに表れているほうが良くて、
前者のほうが何をやろうとしているのかスッと読める感じがする。
私も前者だと思う。
見通しが特に悪くなるほど複雑な場合でないならやろうとしていることがそのままコードに表れているほうが良くて、
前者のほうが何をやろうとしているのかスッと読める感じがする。
138デフォルトの名無しさん
2023/03/10(金) 18:03:17.42ID:Qo+lY2qI139デフォルトの名無しさん
2023/03/10(金) 19:08:36.07ID:HKUOk1Tv >>138
場面に応じてどちらが向いているのか変わるから場面がわかる特定の例で比較することに意味があるのでは?
場面に応じてどちらが向いているのか変わるから場面がわかる特定の例で比較することに意味があるのでは?
140デフォルトの名無しさん
2023/03/10(金) 19:13:36.55ID:Qo+lY2qI >>139
返り値がResult<()>でelse時にErrではなくOk(())という極めて特殊な偏った例になんの意味があるんだ?
返り値がResult<()>でelse時にErrではなくOk(())という極めて特殊な偏った例になんの意味があるんだ?
141デフォルトの名無しさん
2023/03/10(金) 19:17:05.20ID:ha1WEkSQ 意味の有る無しを断じるあたり幼稚やな
周り見てご覧
キミ以外はそんなとこに拘っとらんやろ?
周り見てご覧
キミ以外はそんなとこに拘っとらんやろ?
142デフォルトの名無しさん
2023/03/10(金) 19:36:05.08ID:YsUJsRqF143デフォルトの名無しさん
2023/03/10(金) 19:40:18.95ID:F+OjF9fC 好きな方使ってろバカども
前スレそれで使い潰してまだ反省してねえのか
前スレそれで使い潰してまだ反省してねえのか
144デフォルトの名無しさん
2023/03/10(金) 20:24:59.10ID:7c0jaWrI145デフォルトの名無しさん
2023/03/10(金) 21:43:27.35ID:+jgRtbOv 現在のIT業界に「代替メモリレイアウト」という概念はありますか?
146130
2023/03/10(金) 22:22:59.62ID:IYh2ezPU147デフォルトの名無しさん
2023/03/10(金) 22:39:57.98ID:IYh2ezPU148デフォルトの名無しさん
2023/03/10(金) 23:34:37.12ID:/vLExm3P 好きにしたらええ
それより前スレ埋めない?
それより前スレ埋めない?
149デフォルトの名無しさん
2023/03/10(金) 23:46:20.34ID:Ug/D0/8N >>145
「代替メモリレイアウト」という概念は聞いたことがないが悪魔の証明は無理なのでそういう概念がある可能性を完全に否定することはできない
非公式の日本語翻訳で使われてる用語みたいだけどこのスレで質問する際は公式のドキュメント(英語)を参照するようにしてね
「代替メモリレイアウト」という概念は聞いたことがないが悪魔の証明は無理なのでそういう概念がある可能性を完全に否定することはできない
非公式の日本語翻訳で使われてる用語みたいだけどこのスレで質問する際は公式のドキュメント(英語)を参照するようにしてね
150デフォルトの名無しさん
2023/03/10(金) 23:54:51.68ID:0dyEfhS9 if letを使うかlet elseを使うかはケースバイケースでどちらもありうるのだから揉めるようなことではないと思うんだよな
let elseは要らないから削除せよ!と言ってた人はここを荒らすためだけに言ってただけだと思うし
let elseは要らないから削除せよ!と言ってた人はここを荒らすためだけに言ってただけだと思うし
151デフォルトの名無しさん
2023/03/11(土) 00:35:13.78ID:fYMzQaF5 >>150
ケースバイケースだからこそ具体的な特定のケースを例にどちらがいいかを話してるんだろ
ケースバイケースだからこそ具体的な特定のケースを例にどちらがいいかを話してるんだろ
152デフォルトの名無しさん
2023/03/11(土) 00:54:45.06ID:48Pa/Qcy Rust標準ライブラリのソースを見るとよくわかるよ
let else構文はもちろん使われまくっている
可読性が良くなるからね
let else構文はもちろん使われまくっている
可読性が良くなるからね
153デフォルトの名無しさん
2023/03/11(土) 06:31:08.87ID:nd+w7sZp インストールでつまずいたのでチラ裏させてくれ
サンプルプログラムをコンパイルしたら`link.exe` not foundでコンパイルできなかった。
原因は、Build Tools for Visual Studio 2022をインストールしてしまったこと、アンインストールして
Build Tools for Visual Studio 2019をインストールしてコンパイルできた。
サンプルプログラムをコンパイルしたら`link.exe` not foundでコンパイルできなかった。
原因は、Build Tools for Visual Studio 2022をインストールしてしまったこと、アンインストールして
Build Tools for Visual Studio 2019をインストールしてコンパイルできた。
154デフォルトの名無しさん
2023/03/11(土) 11:07:27.22ID:ShQc/Olf 相も変わらず1人だけズレてるな
155デフォルトの名無しさん
2023/03/11(土) 11:07:29.53ID:phgAMXMr156デフォルトの名無しさん
2023/03/11(土) 12:18:40.44ID:JdznY9pT let-elseはパターンに合致しないと処理を継続できない場合に早期離脱(return、break、etc.)するための構文でしょ
それ以外でも使えるだろうけど逆に可読性が落ちそう
従来の言語で
if (nullable_obj == null) { continue; } // この行を書き忘れるとえらいことになる
nullable_obj.do_something();
...
みたいに書ける処理を今までのRustだと
if let Some(obj) = nullable_obj {
obj.do_something();
...
} else { // ループの末尾ならここは不要
continue;
}
か無理やりunwrapして
if nullable_obj.is_none() { continue; } // この行を書き忘れるとえらいことになる
let obj = nullable_obj.unwrap();
obj.do_something();
...
みたいに書くしかなかったけど、let-elseを使うと従来の言語に近い形で書けるようになる
let Some(obj) = nullable_obj else { continue; }; // この行を書き忘れることはできない
obj.do_something();
...
returnだと?演算子で十分な場合もあるだろうから敢えてcontinueにした
それ以外でも使えるだろうけど逆に可読性が落ちそう
従来の言語で
if (nullable_obj == null) { continue; } // この行を書き忘れるとえらいことになる
nullable_obj.do_something();
...
みたいに書ける処理を今までのRustだと
if let Some(obj) = nullable_obj {
obj.do_something();
...
} else { // ループの末尾ならここは不要
continue;
}
か無理やりunwrapして
if nullable_obj.is_none() { continue; } // この行を書き忘れるとえらいことになる
let obj = nullable_obj.unwrap();
obj.do_something();
...
みたいに書くしかなかったけど、let-elseを使うと従来の言語に近い形で書けるようになる
let Some(obj) = nullable_obj else { continue; }; // この行を書き忘れることはできない
obj.do_something();
...
returnだと?演算子で十分な場合もあるだろうから敢えてcontinueにした
157デフォルトの名無しさん
2023/03/11(土) 12:36:22.58ID:GtLfWJGz let elseはcontinueでもbreakでもreturnでもpanicでも!なら何でも使えるし使われている
returnの時にErr返しなら?を使ってもよいが
.ok_or_else(|| Error)?; とするか
elseでreturnするか
どちらが見やすいかは意見が別れそうだ
returnの時にErr返しなら?を使ってもよいが
.ok_or_else(|| Error)?; とするか
elseでreturnするか
どちらが見やすいかは意見が別れそうだ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【無言】中国怒らせた高市首相→1週間だんまり、国民に実害も説明なし 中国問題を避けてスルー… ★5 [BFU★]
- 「日本はパンダがいなくなる状況に直面するだろう」 中国メディア、専門家の見方伝える [♪♪♪★]
- 止まらぬ「日本売り」 高市財政への懸念で進む金利上昇と円安 ★2 [蚤の市★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★12 [樽悶★]
- 【北海道】帯広vs釧路 不良グループが30人規模の大乱闘 廃墟での肝試しで鉢合わせトラブルに…自称解体工の男ら逮捕 [ぐれ★]
- 【福岡】ミカンの木に逆さ吊りになっていた高齢の男性が死亡 [雑用縞工作★]
- ネトウヨ「日本人の命を守るために中国とケンカしろ!え、薬が作れない?じゃあ死ね!」 こいつらの言う安全保障とはいったい何なのか? [314039747]
- 東大名誉教授「中国は誤った宣伝を繰り広げ、対立を煽り、経済の失敗による国内の不満を日本に向けている」 [903292576]
- 【悲報】Suica、セキュリティを突破されたのが販売されはじめる [347751896]
- 【悲報】米問屋「助けて!米がとんでもない量余ってるのに全然売れないの!でも絶対値下げしたくない…どうしたらいいの…」 [802034645]
- コンビニ店長、ついにキレる「なんであなた達にトイレを貸さないといけないんですか?私達はトイレレンタル業ではありません」 [329329848]
- 🏡
