Skip to content

提案から外すクレート

Ryo Yamashita edited this page Nov 29, 2019 · 1 revision
  • arrayvec (bluss/arrayvec) (available in the playground)

    boost::container::static_vectorのようなもの。別にno-stdでもないのでsmallvecで代用できる。

  • buf_redux

    std::io::{BufReader, BufWriter, LineWriter}のものと置き換えるだけ、と使い勝手は良いのだが普段のコンテストなら気休めしかならないのでは..?

  • bumpalo (fitzgen/bumpalo) (available in the playground)

    定数倍高速化のみをもたらし、かつ使いどころが限られる

  • byte-tools (available in the playground)

    定数倍高速化のみをもたらし、かつ使いどころが限られる

  • counter

    Pythonのcollections.Counterのようなもの。DL数があまり無いのと利便性に少しだけ難がある。Index, IndexMutくらいは欲しかった

  • derive_builder

    使いどころが思いつかない

  • dtoa (available in the playground)

    buf_reduxと同様

  • failure (available in the playground)

    .unwrap()?と書けるようになる、という利点があるにはあるが流石に

  • getrandom (available in the playground)

    rand::rngs::OsRngがある

  • im

    im-rcで十分

  • itoa (available in the playground)

    buf_reduxと同様

  • linked-hash-map (available in the playground)

    indexmapで十分

  • lru-cache (available in the playground)

    定数倍高速化のみをもたらし、かつ使いどころが限られる

  • matches (available in the playground)

    macがある、のだがmacで使えそうなのがmatches!の他にはdo_whileくらいしか無いし最終リリース日とDL数を見ればこちらでも良さそう?

  • memchr (BurntSushi/rust-memchr) (available in the playground)

    定数倍高速化のみをもたらし、かつ使いどころが限られる

  • multimap

    std::unordered_multimapのようなもの。そこそこの歴史とDL数があるがmultisetも提供していないので多分使いどころは限られる

  • phf (available in the playground)

    使いどころが限られる

  • priority-queue

    BinaryHeap<(_, _)>でよくない?

  • rstar

    C++のBoostにboost::geometry::index::rtreeというのが一応あるのだが..

  • ryu (bluss/arrayvec) (available in the playground)

    buf_reduxと同様。またAtCoderは小数点が無かったらWAとはなってないはず

  • sfmt

    rand::thread_rngがある

  • smallbitvec (servo/smallbitvec)

    別にbitsetをアロケートしたところで大したディスアドバンテージになるとは思えない。挙動が謎だし

  • unchecked-index (bluss/unchecked-index)

    定数倍高速化のみをもたらすものでありかつこのcrateを使うべき状況はあまり無く、また今のRustならより安全なものを簡潔に書ける

  • union-find

    petgraphUnionFindがある。(両者の比較はまだしていない)