Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > rubygems/source_indexライブラリ > Gem::SourceIndexクラス

class Gem::SourceIndex

クラスの継承リスト: Gem::SourceIndex < Enumerable < Gem::UserInteraction < Gem::DefaultUserInteraction < Object < Kernel < BasicObject
extend: Gem::UserInteraction

要約

個々のソースから取得した全ての有効な Gem パッケージをインデックス化するためのクラスです。

Gem パッケージのフルネームと それぞれの Gem::Specification オブジェクトを対応付けます。

特異メソッド

定義 説明
from_gems_in(*spec_dirs) -> Gem::SourceIndex

引数で与えられたディレクトリに置かれている Ruby スクリプト形式の gemspec ファイルを使用して 新しいインスタンスを作成します。

from_installed_gems(*deprecated) -> Gem::SourceIndex

与えられたパスをもとに、インスタンスを作成するファクトリメソッドです。

installed_spec_directories -> [String]

gemspec ファイルがインストールされているディレクトリのリストを返します。

load_specification(file_name) -> Gem::Specification | nil

与えられたファイル名から Ruby スクリプト形式の gemspec をロードして Gem::Specification のインスタンスを返します。

new(specifications = {}) -> Gem::SourceIndex

与えられたハッシュを元に自身を初期化します。

インスタンスメソッド

定義 説明
add_spec(gem_spec) -> Gem::Specification

自身に引数で与えられた Gem::Specification のインスタンスを追加します。

add_specs(*gem_specs) -> Hash

自身に引数で与えられた Gem::Specification のインスタンスを全て追加します。

dump -> ()

自身を Marshal.#dump します。

each {|full_name, gem| ... } -> Hash
each -> Enumerator

自身に登録されているそれぞれの Gem についてブロックを評価します。

find_name(gem_name, version_requirement = Gem::Requirement.default) -> Gem::Specification

短い名前で正確にマッチする Gem を返します。

gem_signature(gem_full_name) -> String

与えられた名前を持つ Gem の SHA256 ダイジェストを返します。

index_signature -> String

ソースインデックスの SHA256 ダイジェストを返します。

latest_specs -> Array

自身に含まれる最新の Gem::Specification のリストを返します。

size -> Integer
length -> Integer

自身に含まれる Gem の個数を返します。

load_gems_in(*spec_dirs) -> self

引数で与えられたディレクトリに含まれる gemspec から自身を再構築して返します。

outdated -> Array

更新されていない Gem::Specification のリストを返します。

refresh! -> self

自身を再作成します。

remove_spec(full_name) -> Gem::Specification

引数で指定された名前を持つ Gem をインデックスから削除します。

search(gem_pattern, platform_only = false) -> [Gem::Specification]

引数で指定された条件を満たす Gem のリストを返します。

size -> Integer

自身のサイズを返します。

spec_dirs -> [String]

Gem::SourceIndex#refresh! で自身を更新する時に使用するディレクトリを取得します。

spec_dirs=(dirs)

Gem::SourceIndex#refresh! で自身を更新する時に使用するディレクトリを設定します。

specification(full_name) -> Gem::Specification | nil

指定された名前の Gem::Specification オブジェクトを返します。

update(source_uri, all) -> bool

第一引数で指定された URI を使用して自身を更新します。

継承したメソッド

! != all? any? chunk collect collect_concat count cycle detect drop drop_while each_cons each_entry each_slice each_with_index each_with_object entries find_all find_index first grep group_by include? inject max max_by min min_by minmax minmax_by none? one? partition reject reverse_each slice_before sort sort_by take take_while to_set zip alert alert_error alert_warning ask ask_yes_no choose_from_list say terminate_interaction == === =~ __id__ __send__ _dump class clone dclone display enum_for eql? equal? extend freeze frozen? hash initialize initialize_copy inspect instance_eval instance_exec instance_of? instance_variable_defined? instance_variable_get instance_variable_set instance_variables is_a? marshal_dump marshal_load method method_missing methods must_be must_be_close_to must_be_empty must_be_instance_of must_be_kind_of must_be_nil must_be_same_as must_be_within_epsilon must_equal must_include must_match must_raise must_respond_to must_send must_throw nil? pretty_inspect pretty_print pretty_print_cycle pretty_print_inspect pretty_print_instance_variables private_methods protected_methods public_methods remove_instance_variable respond_to? respond_to_missing? singleton_class singleton_method_added singleton_method_removed singleton_method_undefined singleton_methods taint tainted? tap to_ary to_hash to_int to_io to_proc to_regexp to_s to_str to_yaml to_yaml_properties to_yaml_style trust untaint untrust untrusted? wont_be wont_be_close_to wont_be_empty wont_be_instance_of wont_be_kind_of wont_be_nil wont_be_same_as wont_be_within_epsilon wont_equal wont_include wont_match wont_respond_to