Skip to content

ライブラリ破壊

rsk0315 edited this page Jun 25, 2023 · 7 revisions

つくりなおしたい

  • ライブラリ本体
  • バンドラ
    • ローカル用と CI 用でがちゃがちゃする必要がある
  • ドキュメント
    • ライブラリの各関数に対するドキュメントの方針が怪しい
    • ライブラリの構成を変えたいときとか用のドキュメントもなくて困っている
  • テスト
    • yosupo judge とかを使う?
    • 単体テストでシード固定乱数とか生成する?
    • doc-test がパス関連で微妙になってるかも

下記はメモ。あんまり整理されていない

既存の気に食わない点

  • モジュールの分け方の方針が曖昧になっている
  • 分け方を増やしたいときとかのやり方が怪しい
  • trait で書くか fn で書くか
  • グラフが抽象化されているものと usize 前提のものが混在している
    • モジュールを分ける?
  • ブランチ運用
    • なんかの GA の関係で、デフォルトブランチを main ではなく master にしてた記憶がある
    • 今はもうどうにかなってるかも?

既存で考慮していた点

  • Rust 1.42.0 (stable)
  • バイナリ提出をなるべくしたくない
  • proconio 以外の外部ライブラリをなるべく使わない

新しくやりたいこと

  • マクロもバンドルする
  • proc-macro も導入する
  • サードパーティライブラリも避けない
  • バイナリ提出を惜しまない
    • サードパーティのを使うならライセンスに気をつける
    • サードパーティのを使うときのバイナリサイズはどのくらい?

新しくする方針