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

class Gem::Specification

クラスの継承リスト: Gem::Specification < Object < Kernel < BasicObject

Abstract

Gem パッケージのメタデータを扱うためのクラスです。

特異メソッド

_load(str) -> Gem::Specification

マーシャルされたデータをロードするためのメソッドです。

[PARAM] str:
マーシャルされたデータを指定します。
array_attribute(name) -> ()

Gem::Specification.attribute と同じですが、値を配列に格納するアクセサを作ります。

[PARAM] name:
属性の名前を指定します。

[SEE_ALSO] Gem::Specification.attribute

array_attributes -> Array

@@array_attributes の複製を返します。

[SEE_ALSO] Object#dup

attribute(name) -> ()

デフォルト値を指定したアクセサを定義するために使用します。

以下の副作用があります。

  • クラス変数 @@attributes, @@default_value を変更します。
  • 通常の属性書き込みメソッドを定義します。
  • デフォルト値を持つ属性読み取りメソッドのように振る舞うメソッドを定義します。
attribute_alias_singular(singular, plural) -> ()

既に存在する複数形の属性の単数形バージョンを定義します。

これは単に一つの引数を受け取りそれを配列に追加するようなヘルパーメソッドを定義するということです。

例:

# このように定義すると
attribute_alias_singular :require_path, :require_paths
# こう書くかわりに
s.require_paths = ['mylib']
# こう書くことができます。
s.require_path = 'mylib'
[PARAM] singular:
属性名の単数形を指定します。
[PARAM] plural:
属性名の複数形を指定します。
attribute_defaults -> Array

@@attributes の複製を返します。

attribute_names -> Array

属性名の配列を返します。

attributes(*args) -> ()

複数の属性を一度に作成するために使用します。

各属性のデフォルト値は nil になります。

[PARAM] args:
属性名を一つ以上指定します。
default_value(name) -> object

与えられた名前の属性のデフォルト値を返します。

[PARAM] name:
属性名を指定します。
from_yaml(input) -> Gem::Specification

YAML ファイルから gemspec をロードします。

YAML ファイルから [Gem::Specification]] をロードすると、通常の Ruby オブジェクトの 初期化ルーチン (#initialize) を通りません。このメソッドは初期化ルーチンの一部を実行し、 gemspec のバージョンチェックも行います。

[PARAM] input:
文字列か IO オブジェクトを指定します。
list -> Array

実行中の Ruby のインスタンスで作成された Gem::Specification のインスタンスを返します。

load(filename) -> Gem::Specification

gemspec ファイルをロードします。

[PARAM] filename:
gemspec のファイル名を指定します。
[EXCEPTION] StandardError:
gemspec ファイル内でこのメソッドを呼んでいる場合に発生します。
normalize_yaml_input(input) -> String

YAML 形式の gemspec を正しくフォーマットします。

[PARAM] input:
文字列か IO オブジェクトを指定します。
overwrite_accessor(name) { ... } -> ()

呼び出し時に特別な動作をする必要のある属性があります。 このメソッドはそういうことを可能にします。

ブロックパラメータは任意のものを使用することができます。

[PARAM] name:
属性名を指定します。
read_only(*names) -> ()

与えられた属性名を読み取り専用にします。

[PARAM] names:
属性名を一つ以上指定します。
required_attribute(name, default = nil) -> ()

必須の属性を作成します。

[PARAM] name:
属性名を指定します。
[PARAM] default:
デフォルト値を指定します。

[SEE_ALSO] Gem::Specification.attribute

required_attribute?(name) -> bool

必須属性であれば真を返します。

[PARAM] name:
属性名を指定します。
required_attributes -> Array

必須属性のリストを返します。

インスタンスメソッド

_dump -> String

重要なインスタンス変数のみを Marshal.dump します。

[SEE_ALSO] Marshal.dump

add_bindir(executables) -> Array | nil

実行コマンドの格納場所を返します。

[PARAM] executables:
実行コマンド名を格納した配列を指定します。
add_dependency
add_development_dependency(gem, *requirements) -> Array
add_runtime_dependency(gem, *requirements) -> Array

この Gem を実行するための依存関係を追加します。

例:

spec.add_runtime_dependency('jabber4r', '> 0.1', '<= 0.5')
[PARAM] gem:
依存する Gem の名前か Gem::Dependency のインスタンスを指定します。
[PARAM] requirements:
バージョンの必須条件を指定します。デフォルトは ">= 0" です。

[SEE_ALSO] Gem::Dependency

assign_defaults -> ()

全ての属性にデフォルト値をセットします。

これはアクセサメソッドを使用して行われるので、ブロックを用いた特別な初期化も きちんと実行されます。セットされる値はデフォルト値のコピーです。

author -> String

作成者の名前を返します。

author=(name)

作成者の名前をセットします。

authors -> Array

作成者の名前の配列を返します。

authors=(names)

作成者の名前の配列をセットします。

autorequire -> String

非推奨の属性です。

autorequire=(lib)

非推奨の属性です。

bindir -> String

実行ファイルを格納するディレクトリを返します。

bindir=(dir)

実行ファイルを格納するディレクトリをセットします。

[PARAM] dir:
実行ファイルを格納するディレクトリを指定します。デフォルトは "bin" です。
cert_chain -> Array
cert_chain=(arr)
[PARAM] arr:
デフォルトは空の配列です。
date -> Time

日付を返します。

date=(date)
[PARAM] date:
日付をセットします。デフォルトは今日です。
default_executable -> String | nil

Gem パッケージ内で gem コマンド経由で実行するファイルを返します。

default_executable=(executable)

Gem パッケージ内で gem コマンド経由で実行するファイルをセットします。

[PARAM] executable:
実行ファイルを指定します。
dependencies -> Array

依存している Gem のリストを返します。

[SEE_ALSO] Gem::Dependency

dependent_gems -> Array

この Gem に依存している全ての Gem の情報のリストを返します。

それぞれのエントリは配列になっており、各要素は以下のようになっています。

  1. Gem::Specification
  2. Gem::Dependency
  3. Gem::Specification の配列
description -> String

Gem パッケージの説明を返します。

description=(desc)

Gem パッケージの説明をセットします。

[PARAM] desc:
パッケージの詳細を説明する文章を指定します。
development_dependencies -> Array

この Gem が依存している Gem のリストを返します。

email -> String

メールアドレスを返します。

email=(email)

メールアドレスをセットします。

[PARAM] email:
メールアドレスを指定します。
executable -> String

実行可能ファイル名を返します。

executable=(executable)

実行可能ファイル名をセットします。

[PARAM] executable:
実行可能ファイル名を指定します。
executables -> [String]

実行可能ファイル名のリストを返します。

executables=(executables)

実行可能ファイル名のリストをセットします。

[PARAM] executables:
実行可能ファイル名のリストを指定します。
extensions -> [String]

拡張ライブラリをコンパイルするために必要な extconf.rb 形式のファイルのリストを返します。

extensions=(paths)

拡張ライブラリをコンパイルするために必要な extconf.rb 形式のファイルのリストをセットします。

[PARAM] paths:
拡張ライブラリをコンパイルするために必要な extconf.rb 形式のファイルのリストを指定します。
extra_rdoc_files -> [String]

RDoc でドキュメントを作成する際に使用する特別なファイルのリストを返します。

extra_rdoc_files=(paths)

RDoc でドキュメントを作成する際に使用する特別なファイルのリストをセットします。

[PARAM] paths:
RDoc でドキュメントを作成する際に使用する特別なファイルのリストを指定します。
file_name -> String

生成される Gem パッケージの名前を返します。

files -> [String]

この Gem パッケージに含まれるファイル名の配列を返します。

files=(files)

この Gem パッケージに含まれるファイル名の配列をセットします。

[PARAM] files:
この Gem パッケージに含まれるファイル名の配列を指定します。
full_gem_path -> String

この Gem パッケージへのフルパスを返します。

full_name -> String

この Gem パッケージのバージョンを含む完全な名前 (name-version) を返します。

プラットフォームの情報が指定されている場合は、それも含みます (name-version-platform)。

has_rdoc -> bool

真の場合は RDoc を生成しせん。偽の場合は RDoc を生成します。

has_rdoc=(flag)

RDoc を生成するかどうかをセットします。デフォルトは偽です。

has_rdoc? -> bool

真の場合は RDoc を生成しせん。偽の場合は RDoc を生成します。

[SEE_ALSO] Gem::Specification#has_rdoc

has_test_suite? -> bool

このメソッドは非推奨です。 Gem::Specification#has_unit_tests? を使用してください。

has_unit_tests? -> bool

この Gem パッケージがユニットテストを含むかどうか返します。

真の場合はユニットテストを含みます。そうでない場合は偽を返します。

homepage -> String

この Gem パッケージを作成しているプロジェクトか作成者のウェブサイトの URI を返します。

homepage=(uri)

この Gem パッケージを作成しているプロジェクトか作成者のウェブサイトの URI をセットします。

[PARAM] uri:
この Gem パッケージを作成しているプロジェクトか作成者のウェブサイトの URI を指定します。
installation_path -> String

この Gem パッケージのインストール先のパスを返します。

lib_files -> [String]

この Gem パッケージに含まれているファイルのうち Gem::Specification#require_paths 以下にあるファイルのリストを返します。

loaded=(flag)

この Gem パッケージの gemspec が既にロードされているかどうかをセットします。

この属性は永続化しません。

[PARAM] flag:
既にロードされている場合は真を指定します。
loaded? -> bool

この Gem パッケージの gemspec が既にロードされているかどうかを返します。

既にロードされている場合は真を返します。そうでない場合は偽を返します。

loaded_from -> String

この Gem パッケージの gemspec がある場所を返します。

この属性は永続化されません。

loaded_from=(path)

この Gem パッケージの gemspec がある場所をセットします。

[PARAM] path:
この Gem パッケージの gemspec がある場所を指定します。
mark_version -> String

RubyGems のバージョンを内部にセットします。

name -> String

この Gem パッケージの名前を返します。

name=(name)

この Gem パッケージの名前をセットします。

[PARAM] name:
この Gem パッケージの名前を指定します。
normalize -> [String]

この Gem パッケージの含まれるファイルリストから重複を取り除きます。

original_name -> String

このメソッドは後方互換性のために残されています。

[SEE_ALSO] Gem::Specification#full_name

original_platform -> String

この属性は古いバージョンの Gem パッケージをアンインストールするために残されています。

original_platform=(platform)

この属性は古いバージョンの Gem パッケージをアンインストールするために残されています。

[PARAM] platform:
プラットフォームを指定します。
platform -> String

この Gem パッケージを使用できるプラットフォームを返します。

platform=(platform)

この Gem パッケージを使用できるプラットフォームをセットします。

[PARAM] platform:
この Gem パッケージを使用できるプラットフォームを指定します。 デフォルトは Gem::Platform::RUBY です。

[SEE_ALSO] Gem::Platform::RUBY

post_install_message -> String
post_install_message=(message)
[PARAM] message:
メッセージを指定します。
rdoc_options -> [String]

API ドキュメントを生成するときに rdoc コマンドに与えるオプションを返します。

rdoc_options=(options)

API ドキュメントを生成するときに rdoc コマンドに与えるオプションをセットします。

[PARAM] options:
API ドキュメントを生成するときに rdoc コマンドに与えるオプションを指定します。
require_path -> String

Gem::Specification#require_paths の単数バージョンです。

[SEE_ALSO] Gem::Specification#require_paths

require_path=(path)

Gem::Specification#require_paths= の単数バージョンです。

[PARAM] path:
この Gem パッケージを使用した際に require するファイルが置かれているディレクトリを指定します。

[SEE_ALSO] Gem::Specification#require_paths=

require_paths -> [String]

この Gem パッケージを使用した際に require するファイルが置かれているディレクトリ のリストを返します。

require_paths=(paths)

この Gem パッケージを使用した際に require するファイルが置かれているディレクトリ のリストをセットします。

[PARAM] paths:
この Gem パッケージを使用した際に require するファイルが置かれているディレクトリ のリストを指定します。
required_ruby_version -> Gem::Requirement

この Gem パッケージを動作させるのに必要な Ruby のバージョンを返します。

required_ruby_version=(requirement)

この Gem パッケージを動作させるのに必要な Ruby のバージョンをセットします。

[PARAM] requirement:
Gem::Requirement.create が受け付ける形式のオブジェクトを指定します。

[SEE_ALSO] Gem::Requirement

required_rubygems_version -> Gem::Requirement

この Gem パッケージを動作させるのに必要な RubyGems のバージョンを返します。

required_rubygems_version=(requirement)

この Gem パッケージを動作させるのに必要な RubyGems のバージョンをセットします。

[PARAM] requirement:
Gem::Requirement.create が受け付ける形式のオブジェクトを指定します。

[SEE_ALSO] Gem::Requirement

requirements -> Array

この Gem パッケージを動作させるのに必要な条件を返します。 これはユーザのためのシンプルな情報です。

requirements=(infomations)

この Gem パッケージを動作させるのに必要な条件をセットします。 これはユーザのためのシンプルな情報をセットします。

[PARAM] infomations:
情報を文字列の配列で指定します。
rubyforge_project -> String

この Gem の RubyForge 上でのプロジェクト名を返します。

rubyforge_project=(project_name)

この Gem の RubyForge 上でのプロジェクト名をセットします。

[PARAM] project_name:
RubyForge 上のプロジェクト名を指定します。
rubygems_version -> String

この Gem パッケージを作成した RubyGems のバージョンを返します。

rubygems_version=(version)

この Gem パッケージを作成した RubyGems のバージョンをセットします。 この属性は Gem パッケージが作成された時に自動的にセットされます。

[PARAM] versipn:
RubyGems のバージョンを指定します。
runtime_dependencies -> Array

この Gem パッケージが依存している Gem パッケージのリストを返します。

satisfies_requirement?(dependency) -> bool

この Gem パッケージが与えられた依存関係を満たすかどうかを返します。

依存関係を満たす場合は真を返します。そうでない場合は偽を返します。

[PARAM] dependency:
チェックしたい依存関係を指定します。

[SEE_ALSO] Gem::Dependency

signing_key -> String

この Gem パッケージの署名に使用するキーを返します。

signing_key=(key)

この Gem パッケージの署名に使用するキーをセットします。

[PARAM] key:
署名に使用するキーを指定します。
specification_version -> Integer

この Gem パッケージに用いられている gemspec のバージョンを返します。

specification_version=(version)

この Gem パッケージに用いられている gemspec のバージョンをセットします。

[PARAM] version:
gemspec のバージョンを指定します。

[SEE_ALSO] Gem::Specification::SPECIFICATION_VERSION_HISTORY

summary -> String

この Gem パッケージの短い説明を返します。

summary=(summary)

この Gem パッケージの短い説明をセットします。

[PARAM] summary:
短い説明を指定します。
test_file -> String

Gem::Specification#test_files の単数バージョンです。

test_file=(file)

Gem::Specification#test_files= の単数バージョンです。

test_files -> [String]

ユニットテストのファイルのリストを返します。

test_files=(files)

ユニットテストのファイルのリストをセットします。

[PARAM] files:
ユニットテストのファイルのリストを指定します。
test_suite_file -> String

この属性は非推奨です。 Gem::Specification#test_files を使用してください。

test_suite_file=(file)

この属性は非推奨です。 Gem::Specification#test_files= を使用してください。

[UNKNOWN_META_INFO] @params:
file テストスイートのファイルを指定します。
to_ruby -> String

自身を再現するための Ruby スクリプトを文字列で返します。

省略されている値はデフォルト値が使用されます。

validate -> bool

必須属性のチェックと自身の基本的な正当性チェックを行います。

チェックにパスした場合は常に true を返します。そうでない場合は例外が発生します。

[EXCEPTION] Gem::InvalidSpecificationException:
チェックにパスしなかった場合に発生します。
version -> Gem::Version

この Gem パッケージのバージョンを返します。

version=(version)

この Gem パッケージのバージョンをセットします。

[PARAM] version:
バージョンを文字列か Gem::Version のインスタンスで指定します。
yaml_initialize

定数

CURRENT_SPECIFICATION_VERSION -> 2

現在の gemspec のバージョンを表す定数です。

MARSHAL_FIELDS -> Hash
NONEXISTENT_SPECIFICATION_VERSION -> -1

明確に指定されていない時の gemspec のバージョンを表します。

SPECIFICATION_VERSION_HISTORY -> Hash

gemspec ファイルのバージョンの歴史を表す定数です。

TODAY -> Time

本日の日付を返します。

Methods

Classes