RuZip
Zip/Rubyがメンテされてない中、速いZIPライブラリーが欲しくて作ろうとしてるけど難しい。
Zip/Rubyをアップデートする方が簡単かもしれん。
この場合RubyGems.orgへのプッシュ権を貰うかgem名を変えて公開する
困ってること
ZipFileのラッパーをうまく作れない。
ライフタイムを持つので、magnus::wrapしたらスレッドアンセーフというエラー
ZipArchiveへの参照と、その中でのインデックスを持つだけの構造体にすればいいと思ったが
ZipAtchive::by_name()の戻り値からZipFileラッパーを作れない。
ZipArchiveをmoveしてはいけない
Arcとかはいけるか、Fileの中でZipArchive::by_index()でZipFileを取ろうと思ったmutにする必要があって、Arcだとmutでの借用ができない
ラッパーは諦めて、Rubyのクラスを作って、ZipFileのメタデータとかをつめかえるのがいい?
それでもreadとかはできない気がする。
Rubyのインスタンス変数としてArchiveを持たせるのは?
APIを揃えるのも諦めて、Zip/RubyのAPIを踏襲して中身をzipクレートでやるだけにするという方向もあり。
Weakを使うといいのか知ら