🦀

RustでJSONから値をゆるりと取り出すマクロを書いた話

に公開
3
GitHubで編集を提案

Discussion

higumachanhigumachan

こちらの記事macroの知識で大変参考になりました。
valqも機会があれば利用してみようかと思います。

1点なのですが、わかりやすさは本人しだいになるかもしれないですが、方針とコードの長さの観点だけで見るとgetを利用する方針はand_thenを多用しなくても以下のように書くことも出来るので共有させてください。

https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=fd1675abb6dd96af7a4e4b7c4b070d7f

jiftechnifyjiftechnify

記事をお読みいただき、そして参考になるコメントを残していただきありがとうございます!
もし valq が使えそうな場面がありましたらぜひ使ってあげてください!

?ResultだけでなくOptionにも使えるというのが頭から抜けていました…
ちょっとHackyなので確かに好みは分かれそうですね(クロージャの即時実行というのが往年のJSを思い起こさせて自分は好きです(?))。

higumachanhigumachan

ちょっとHackyなので確かに好みは分かれそうですね(クロージャの即時実行というのが往年のJSを思い起こさせて自分は好きです(?))。

Rustには文(のように見えるもの)と式の間に差がないので、無名関数の即時実行っていうのは珍しいですよね。
Tryの脱出は関数の文脈に依存するので(ブロックだとだめ)必要になっちゃうんですよね。