作った自作ライブラリを紹介する(try-partialord)
せっかく作ったので使ってもらって、批評してほしいから紹介する。
try-partialord
f32, f64をソートするのが面倒であるという問題を安全に解決するために作った。
いままでは、
vec_f32.sort_by(|x,y|x.partial_cmp(y).unwrap());
のようにNANがないことを前提にするか、
vec_f32.sort_by_key(|x|ordered_float::OrderedFloat(x));
のようにラップする必要があった。
これを
let result = vec_f32.try_sort();
とすることで、NANのような比較できないものがなく正しくソートできたかを把握することができるようにするものである。
思ったこと
stdにおいてf32
,f64
をPartialOrd
のみにして比較できない場合のエラーハンドリングを強制しながら、ソートや最大最小のような比較が必要なところでそのエラーを直接ハンドリングできないのは整合性がとれてないのではと思った。
Author And Source
この問題について(作った自作ライブラリを紹介する(try-partialord)), 我々は、より多くの情報をここで見つけました https://qiita.com/aobat/items/088382db018c88dfe62b著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .