RubyGemライブラリの中身を探る

とりあえず調べた範囲のメモです。

Gem::Format.from_file_by_path( gem_file_path )

gemファイルをパースして、結果をGem::Formatで返します。

Gem::Format#spec

specファイルの中身を取得。戻り型はGem::Specification
当然ながらGem::Specificationオブジェクトからspecの中身を取得できます。

主なものは以下

spec.name         => ライブラリ名
spec.version      => バージョン
spec.author       => 作者
spec.email        => 作者のメールアドレス
spec.summary      => 説明文(短い)
spec.description  => 説明文(長い)
spec.dependencies => 依存情報(Gem::Dependency)の配列

Gem::Dependencyの取り扱い方は未調査。

うまくいけば単純なgemならebuildが自動生成できそう。