るりまサーチ (Ruby 2.2.0)

最速Rubyリファレンスマニュアル検索!
689件ヒット [1-100件を表示] (0.091秒)

別のキーワード

  1. object yield_self
  2. _builtin yield_self
  3. _builtin self
  4. tracepoint self
  5. codeobject document_self

クラス

モジュール

キーワード

検索結果

<< 1 2 3 ... > >>

TracePoint#self -> object (54331.0)

イベントを発生させたオブジェクトを返します。

イベントを発生させたオブジェクトを返します。

以下のようにする事で同じ値を取得できます。


//emlist[例][ruby]{
trace.binding.eval('self')
//}

@see TracePoint#binding

Object#itself -> object (18358.0)

self を返します。

self を返します。

//emlist[][ruby]{
string = 'my string' # => "my string"
string.itself.object_id == string.object_id # => true
//}

Hash#merge!(other) {|key, self_val, other_val| ... } -> self (730.0)

selfとotherのハッシュの内容をマージ(統合)します。

selfとotherのハッシュの内容をマージ(統合)します。

デフォルト値はselfの設定のままです。

self と other に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に other の値を使います。

otherがハッシュではない場合、otherのメソッドto_hashを使って暗黙の変換を試みます。

@param other マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@return マージ後のse...

Hash#update(other) {|key, self_val, other_val| ... } -> self (730.0)

selfとotherのハッシュの内容をマージ(統合)します。

selfとotherのハッシュの内容をマージ(統合)します。

デフォルト値はselfの設定のままです。

self と other に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に other の値を使います。

otherがハッシュではない場合、otherのメソッドto_hashを使って暗黙の変換を試みます。

@param other マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@return マージ後のse...

Array#permutation(n = self.length) { |p| block } -> self (637.0)

サイズ n の順列をすべて生成し,それを引数としてブロックを実行します。

サイズ n の順列をすべて生成し,それを引数としてブロックを実行します。

引数を省略した場合は配列の要素数と同じサイズの順列に対してブロックを実
行します。

得られる順列の順序は保証されません。ブロックなしで呼び出されると, 順列
を生成する Enumerator オブジェクトを返します。

@param n 生成する配列のサイズを整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。

@raise TypeError 引数に整数以外の(暗黙の型変換が行えない)オブジェクトを
...

絞り込み条件を変える

String#encode!(encoding, from_encoding, options = nil) -> self (496.0)

self を指定したエンコーディングに変換し、自身を置き換えます。引数を2つ 与えた場合、第二引数は変換元のエンコーディングを意味します。さもなくば self のエンコーディングが使われます。変換後の self を返します。

self を指定したエンコーディングに変換し、自身を置き換えます。引数を2つ
与えた場合、第二引数は変換元のエンコーディングを意味します。さもなくば
self のエンコーディングが使われます。変換後の self を返します。

(gsub!などと異なり)変換が行なわれなくても self を返します。

@param encoding 変換先のエンコーディングを表す文字列か Encoding オブジェクトを指定します。
@param from_encoding 変換元のエンコーディングを表す文字列か Encoding オブジェクトを指定します。
@return ...

String#encode!(encoding, options = nil) -> self (496.0)

self を指定したエンコーディングに変換し、自身を置き換えます。引数を2つ 与えた場合、第二引数は変換元のエンコーディングを意味します。さもなくば self のエンコーディングが使われます。変換後の self を返します。

self を指定したエンコーディングに変換し、自身を置き換えます。引数を2つ
与えた場合、第二引数は変換元のエンコーディングを意味します。さもなくば
self のエンコーディングが使われます。変換後の self を返します。

(gsub!などと異なり)変換が行なわれなくても self を返します。

@param encoding 変換先のエンコーディングを表す文字列か Encoding オブジェクトを指定します。
@param from_encoding 変換元のエンコーディングを表す文字列か Encoding オブジェクトを指定します。
@return ...

Module#prepend(*modules) -> self (463.0)

指定したモジュールを self の継承チェインの先頭に「追加する」ことで self の定数、メソッド、モジュール変数を「上書き」します。

指定したモジュールを self の継承チェインの先頭に「追加する」ことで
self の定数、メソッド、モジュール変数を「上書き」します。

継承チェイン上で、self のモジュール/クラスよりも「手前」に
追加されるため、結果として self で定義されたメソッドは
override されます。

modules で指定したモジュールは後ろから順に処理されるため、
modules の先頭が最も優先されます。

また、継承によってこの「上書き」を処理するため、prependの引数として
渡したモジュールのインスタンスメソッドでsuperを呼ぶことで
self のモジュール/クラスのメソッドを呼び...

Hash#merge!(other) -> self (430.0)

selfとotherのハッシュの内容をマージ(統合)します。

selfとotherのハッシュの内容をマージ(統合)します。

デフォルト値はselfの設定のままです。

self と other に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に other の値を使います。

otherがハッシュではない場合、otherのメソッドto_hashを使って暗黙の変換を試みます。

@param other マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@return マージ後のse...

Hash#update(other) -> self (430.0)

selfとotherのハッシュの内容をマージ(統合)します。

selfとotherのハッシュの内容をマージ(統合)します。

デフォルト値はselfの設定のままです。

self と other に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に other の値を使います。

otherがハッシュではない場合、otherのメソッドto_hashを使って暗黙の変換を試みます。

@param other マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@return マージ後のse...

絞り込み条件を変える

String#<<(other) -> self (430.0)

self に文字列 other を破壊的に連結します。 other が 整数である場合は other.chr(self.encoding) 相当の文字を末尾に追加します。

self に文字列 other を破壊的に連結します。
other が 整数である場合は other.chr(self.encoding) 相当の文字を末尾に追加します。

self を返します。

@param other 文字列もしくは 0 以上の整数

//emlist[例][ruby]{
str = "string"
str.concat "XXX"
p str # => "stringXXX"

str << "YYY"
p str # => "stringXXXYYY"

str << 65 # 文字AのASCIIコード
p str # => "stri...

String#concat(other) -> self (430.0)

self に文字列 other を破壊的に連結します。 other が 整数である場合は other.chr(self.encoding) 相当の文字を末尾に追加します。

self に文字列 other を破壊的に連結します。
other が 整数である場合は other.chr(self.encoding) 相当の文字を末尾に追加します。

self を返します。

@param other 文字列もしくは 0 以上の整数

//emlist[例][ruby]{
str = "string"
str.concat "XXX"
p str # => "stringXXX"

str << "YYY"
p str # => "stringXXXYYY"

str << 65 # 文字AのASCIIコード
p str # => "stri...

Hash#merge(other) {|key, self_val, other_val| ... } -> Hash (427.0)

selfとotherのハッシュの内容をマージ(統合)した結果を返します。デフォルト値はselfの設定のままです。

selfとotherのハッシュの内容をマージ(統合)した結果を返します。デフォルト値はselfの設定のままです。

self と other に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に other の値を使います。

otherがハッシュではない場合、otherのメソッドto_hashを使って暗黙の変換を試みます。

@param other マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@return マージ...

Integer#downto(min) {|n| ... } -> self (427.0)

self から min まで 1 ずつ減らしながらブロックを繰り返し実行します。 self < min であれば何もしません。

self から min まで 1 ずつ減らしながらブロックを繰り返し実行します。
self < min であれば何もしません。

@param min 数値
@return self を返します。

//emlist[][ruby]{
5.downto(1) {|i| print i, " " } # => 5 4 3 2 1
//}

@see Integer#upto, Numeric#step, Integer#times

Integer#times {|n| ... } -> self (427.0)

self 回だけ繰り返します。 self が正の整数でない場合は何もしません。

self 回だけ繰り返します。
self が正の整数でない場合は何もしません。

またブロックパラメータには 0 から self - 1 までの数値が渡されます。

//emlist[][ruby]{
3.times { puts "Hello, World!" } # Hello, World! と3行続いて表示される。
0.times { puts "Hello, World!" } # 何も表示されない。
5.times {|n| print n } # 01234 と表示される。
//}

@see Integer#upto, Integer#downto,...

絞り込み条件を変える

Module#append_features(module_or_class) -> self (415.0)

モジュール(あるいはクラス)に self の機能を追加します。

モジュール(あるいはクラス)に self の機能を追加します。

このメソッドは Module#include の実体であり、
include を Ruby で書くと以下のように定義できます。

//emlist[例][ruby]{
def include(*modules)
modules.reverse_each do |mod|
# append_features や included はプライベートメソッドなので
# 直接 mod.append_features(self) などとは書けない
mod.__send__(:append_features, s...

Array#delete_if {|x| ... } -> self (412.0)

要素を順番にブロックに渡して評価し、その結果が真になった要素をすべて削除します。 delete_if は常に self を返しますが、reject! は要素が 1 つ以上削除されれば self を、 1 つも削除されなければ nil を返します。

要素を順番にブロックに渡して評価し、その結果が真になった要素をすべて削除します。
delete_if は常に self を返しますが、reject! は要素が 1 つ以上削除されれば self を、
1 つも削除されなければ nil を返します。

ブロックが与えられなかった場合は、自身と reject! から生成した
Enumerator オブジェクトを返します。
返された Enumerator オブジェクトの each メソッドには、
もとの配列に対して副作用があることに注意してください。

//emlist[例][ruby]{
a = [0, 1, 2, 3, 4, 5]
a.dele...

Array#reject! {|x| ... } -> self | nil (412.0)

要素を順番にブロックに渡して評価し、その結果が真になった要素をすべて削除します。 delete_if は常に self を返しますが、reject! は要素が 1 つ以上削除されれば self を、 1 つも削除されなければ nil を返します。

要素を順番にブロックに渡して評価し、その結果が真になった要素をすべて削除します。
delete_if は常に self を返しますが、reject! は要素が 1 つ以上削除されれば self を、
1 つも削除されなければ nil を返します。

ブロックが与えられなかった場合は、自身と reject! から生成した
Enumerator オブジェクトを返します。
返された Enumerator オブジェクトの each メソッドには、
もとの配列に対して副作用があることに注意してください。

//emlist[例][ruby]{
a = [0, 1, 2, 3, 4, 5]
a.dele...

Array#sort! -> self (412.0)

配列の内容をソートします。要素同士の比較は <=> 演算子を使って行います。sort はソートされた配列を生成して返します。 sort! は self を破壊的にソートし、self を返します。

配列の内容をソートします。要素同士の比較は <=> 演算子を使って行います。sort はソートされた配列を生成して返します。
sort! は self を破壊的にソートし、self を返します。

ブロックとともに呼び出された時には、要素同士の比較をブロックを用いて行います。
ブロックに2つの要素を引数として与えて評価し、その結果で比較します。
ブロックは <=> 演算子と同様に整数を返すことが期待されています。つまり、
ブロックは第1引数が大きいなら正の整数、両者が等しいなら0、そして第1引数の方が小さいなら
負の整数を返さなければいけません。両者を比較できない時は nil を返します。
...

Array#sort! {|a, b| ... } -> self (412.0)

配列の内容をソートします。要素同士の比較は <=> 演算子を使って行います。sort はソートされた配列を生成して返します。 sort! は self を破壊的にソートし、self を返します。

配列の内容をソートします。要素同士の比較は <=> 演算子を使って行います。sort はソートされた配列を生成して返します。
sort! は self を破壊的にソートし、self を返します。

ブロックとともに呼び出された時には、要素同士の比較をブロックを用いて行います。
ブロックに2つの要素を引数として与えて評価し、その結果で比較します。
ブロックは <=> 演算子と同様に整数を返すことが期待されています。つまり、
ブロックは第1引数が大きいなら正の整数、両者が等しいなら0、そして第1引数の方が小さいなら
負の整数を返さなければいけません。両者を比較できない時は nil を返します。
...

絞り込み条件を変える

Thread#join -> self (412.0)

スレッド self の実行が終了するまで、カレントスレッドを停止し ます。self が例外により終了していれば、その例外がカレントス レッドに対して発生します。

スレッド self の実行が終了するまで、カレントスレッドを停止し
ます。self が例外により終了していれば、その例外がカレントス
レッドに対して発生します。

limit を指定して、limit 秒過ぎても自身が終了しない場合、nil を返します。

@param limit タイムアウトする時間を整数か小数で指定します。単位は秒です。

@raise ThreadError join を実行することによってデッドロックが起きる場合に発生します。またカレントスレッドを join したときにも発生します。

以下は、生成したすべてのスレッドの終了を待つ例です。

threads = ...

Thread#join(limit) -> self | nil (412.0)

スレッド self の実行が終了するまで、カレントスレッドを停止し ます。self が例外により終了していれば、その例外がカレントス レッドに対して発生します。

スレッド self の実行が終了するまで、カレントスレッドを停止し
ます。self が例外により終了していれば、その例外がカレントス
レッドに対して発生します。

limit を指定して、limit 秒過ぎても自身が終了しない場合、nil を返します。

@param limit タイムアウトする時間を整数か小数で指定します。単位は秒です。

@raise ThreadError join を実行することによってデッドロックが起きる場合に発生します。またカレントスレッドを join したときにも発生します。

以下は、生成したすべてのスレッドの終了を待つ例です。

threads = ...

Hash#to_h -> self | Hash (409.0)

self を返します。Hash クラスのサブクラスから呼び出した場合は self を Hash オブジェクトに変換します。

self を返します。Hash クラスのサブクラスから呼び出した場合は
self を Hash オブジェクトに変換します。

//emlist[例][ruby]{
hash = {}
p hash.to_h # => {}
p hash.to_h == hash # => true

class MyHash < Hash;end
my_hash = MyHash.new
p my_hash.to_h # => {}
p my_hash.class # => MyHash
p my_hash.to_h.class # => Hash
//}

Object#tap {|x| ... } -> self (409.0)

self を引数としてブロックを評価し、self を返します。

self を引数としてブロックを評価し、self を返します。

メソッドチェインの途中で直ちに操作結果を表示するために
メソッドチェインに "入り込む" ことが、このメソッドの主目的です。

//emlist[][ruby]{
(1..10) .tap {|x| puts "original: #{x}" }
.to_a .tap {|x| puts "array: #{x}" }
.select {|x| x.even? } .tap {|x| puts "evens: #{x}" }
.map ...

Hash#delete_if {|key, value| ... } -> self (400.0)

キーと値を引数としてブロックを評価した結果が真であ るような要素を self から削除します。

キーと値を引数としてブロックを評価した結果が真であ
るような要素を self から削除します。

delete_if は常に self を返します。
reject! は、要素を削除しなかった場合には nil を返し、
そうでなければ self を返します。

ブロックを省略した場合は Enumerator を返します。

//emlist[例][ruby]{
h = { 2 => "8" ,4 => "6" ,6 => "4" ,8 => "2" }

p h.reject!{|key, value| key.to_i < value.to_i } #=> { 6 => "4", 8 =...

絞り込み条件を変える

Hash#keep_if {|key, value| ... } -> self (400.0)

キーと値を引数としてブロックを評価した結果が真であるような要素を self に残します。

キーと値を引数としてブロックを評価した結果が真であるような要素を self
に残します。

keep_if は常に self を返します。
select! はオブジェクトが変更された場合に self を、
されていない場合に nil を返します。

ブロックが与えられなかった場合は、自身と keep_if から生成した
Enumerator オブジェクトを返します。

//emlist[例][ruby]{
h1 = {}
c = ("a".."g")
c.each_with_index {|e, i| h1[i] = e }

h2 = h1.dup
h1.select! # => #<E...

Hash#reject! {|key, value| ... } -> self|nil (400.0)

キーと値を引数としてブロックを評価した結果が真であ るような要素を self から削除します。

キーと値を引数としてブロックを評価した結果が真であ
るような要素を self から削除します。

delete_if は常に self を返します。
reject! は、要素を削除しなかった場合には nil を返し、
そうでなければ self を返します。

ブロックを省略した場合は Enumerator を返します。

//emlist[例][ruby]{
h = { 2 => "8" ,4 => "6" ,6 => "4" ,8 => "2" }

p h.reject!{|key, value| key.to_i < value.to_i } #=> { 6 => "4", 8 =...

Hash#select! {|key, value| ... } -> self | nil (400.0)

キーと値を引数としてブロックを評価した結果が真であるような要素を self に残します。

キーと値を引数としてブロックを評価した結果が真であるような要素を self
に残します。

keep_if は常に self を返します。
select! はオブジェクトが変更された場合に self を、
されていない場合に nil を返します。

ブロックが与えられなかった場合は、自身と keep_if から生成した
Enumerator オブジェクトを返します。

//emlist[例][ruby]{
h1 = {}
c = ("a".."g")
c.each_with_index {|e, i| h1[i] = e }

h2 = h1.dup
h1.select! # => #<E...

IO#each_char {|c| ... } -> self (397.0)

self に含まれる文字を一文字ずつブロックに渡して評価します。

self に含まれる文字を一文字ずつブロックに渡して評価します。

self は読み込み用にオープンされていなければなりません。

ブロックを省略した場合は各文字について繰り返す Enumerator を返します。

@raise IOError self が読み込み用にオープンされていない場合に発生します。

f = File.new("testfile")
f.each_char {|c| print c, ' ' } #=> #<File:testfile>

String#unicode_normalize!(form = :nfc) -> self (397.0)

self を NFC、NFD、NFKC、NFKD のいずれかの正規化形式で Unicode 正規化し た文字列に置き換えます。

self を NFC、NFD、NFKC、NFKD のいずれかの正規化形式で Unicode 正規化し
た文字列に置き換えます。

(gsub!などと異なり)変換が行なわれなくても self を返します。

@param form 正規化形式を :nfc、:nfd、:nfkc、:nfkd のいずれかで指定しま
す。省略した場合は :nfc になります。

@raise Encoding::CompatibilityError self が Unicode 文字列ではない場合
に発生します。

//e...

絞り込み条件を変える

Numeric#step(by: 1, to: Float::INFINITY) {|n| ... } -> self (385.0)

self からはじめ step を足しながら limit を越える 前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども 指定できます。

self からはじめ step を足しながら limit を越える
前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども
指定できます。

@param limit ループの上限あるいは下限を数値で指定します。step に負の数が指定された場合は、
下限として解釈されます。

@param step 各ステップの大きさを数値で指定します。負の数を指定することもできます。

@param to 引数limitと同じですが、省略した場合はキーワード引数byが正の
数であれば Float::INF...

Numeric#step(by:, to: -Float::INFINITY) {|n| ... } -> self (385.0)

self からはじめ step を足しながら limit を越える 前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども 指定できます。

self からはじめ step を足しながら limit を越える
前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども
指定できます。

@param limit ループの上限あるいは下限を数値で指定します。step に負の数が指定された場合は、
下限として解釈されます。

@param step 各ステップの大きさを数値で指定します。負の数を指定することもできます。

@param to 引数limitと同じですが、省略した場合はキーワード引数byが正の
数であれば Float::INF...

Numeric#step(limit, step = 1) {|n| ... } -> self (385.0)

self からはじめ step を足しながら limit を越える 前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども 指定できます。

self からはじめ step を足しながら limit を越える
前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども
指定できます。

@param limit ループの上限あるいは下限を数値で指定します。step に負の数が指定された場合は、
下限として解釈されます。

@param step 各ステップの大きさを数値で指定します。負の数を指定することもできます。

@param to 引数limitと同じですが、省略した場合はキーワード引数byが正の
数であれば Float::INF...

Module#prepend_features(mod) -> self (379.0)

Module#prepend から呼び出されるメソッドで、 prepend の処理の実体です。このメソッド自体は mod で指定した モジュール/クラスの継承チェインの先頭に self を追加します。

Module#prepend から呼び出されるメソッドで、
prepend の処理の実体です。このメソッド自体は mod で指定した
モジュール/クラスの継承チェインの先頭に self を追加します。

このメソッドを上書きすることで、prepend の処理を変更したり
追加したりすることができます。

@param mod prepend を呼び出したモジュール
@return mod が返されます

//emlist[例][ruby]{
class Recorder
RECORDS = []
end

module X
def self.prepend_features(mod)
...

Numeric#nonzero? -> self | nil (379.0)

自身がゼロの時 nil を返し、非ゼロの時 self を返します。

自身がゼロの時 nil を返し、非ゼロの時 self を返します。

//emlist[例][ruby]{
p 10.nonzero? #=> 10
p 0.nonzero? #=> nil
p 0.0.nonzero? #=> nil
p Rational(0, 2).nonzero? #=> nil
//}

非ゼロの時に self を返すため、自身が 0 の時に他の処理をさせたい場合に以
下のように記述する事もできます。

//emlist[例][ruby]{
a = %w( z Bb bB bb BB a...

絞り込み条件を変える

Object#extend(*modules) -> self (379.0)

引数で指定したモジュールのインスタンスメソッドを self の特異 メソッドとして追加します。

引数で指定したモジュールのインスタンスメソッドを self の特異
メソッドとして追加します。

Module#include は、クラス(のインスタンス)に機能を追加します
が、extend は、ある特定のオブジェクトだけにモジュールの機能を追加
したいときに使用します。

引数に複数のモジュールを指定した場合、最後
の引数から逆順に extend を行います。

@param modules モジュールを任意個指定します(クラスは不可)。
@return self を返します。

//emlist[][ruby]{
module Foo
def a
'ok Foo'
en...

String#chomp!(rs = $/) -> self | nil (379.0)

self の末尾から rs で指定する改行コードを取り除きます。 ただし rs が "\n" ($/ のデフォルト値) のときは、 実行環境によらず "\r", "\r\n", "\n" のすべてを改行コードとみなして取り除きます。

self の末尾から rs で指定する改行コードを取り除きます。
ただし rs が "\n" ($/ のデフォルト値) のときは、
実行環境によらず "\r", "\r\n", "\n" のすべてを改行コードとみなして取り除きます。

rs に nil を指定した場合、このメソッドは何もしません。

rs に空文字列 ("") を指定した場合は「パラグラフモード」になり、
実行環境によらず末尾の連続する改行コード("\r\n", "\n")をすべて取り除きます。

@return chomp! は通常 self を返しますが、取り除く改行がなかった場合は nil を返します。

//emli...

String#delete!(*strs) -> self | nil (379.0)

self から strs に含まれる文字を破壊的に取り除きます。

self から strs に含まれる文字を破壊的に取り除きます。

str の形式は tr(1) と同じです。
つまり、「a-c」は a から c を意味し、"^0-9" のように
文字列の先頭が「^」の場合は指定文字以外を意味します。

「-」は文字列の両端にない場合にだけ範囲指定の意味になります。
「^」も文字列先頭にあるときだけ否定の効果を発揮します。
また、「-」「^」「\」はバックスラッシュ (「\」)
によってエスケープできます。

なお、引数を複数指定した場合は、
すべての引数にマッチする文字だけが削除されます。

@return 通常は self を返しますが、何も変更が起こ...

Hash#compare_by_identity -> self (367.0)

ハッシュのキーの一致判定をオブジェクトの同一性で判定するように変更します。

ハッシュのキーの一致判定をオブジェクトの同一性で判定するように変更します。

デフォルトでは、キーのオブジェクトによっては内容が同じならキーが一致しているとみなされますが、より厳密に
Object#object_idが一致しているかどうかを条件とするようにselfを変更します。

selfが変化する破壊的メソッドです。

@return selfを返します。

//emlist[例][ruby]{
h1 = { "a" => 100, "b" => 200, :c => "c" }
p h1.compare_by_identity? #=> false
p h1["a"] #=...

IO#chars {|c| ... } -> self (367.0)

このメソッドは obsolete です。 代わりに IO#each_char を使用してください。

このメソッドは obsolete です。
代わりに IO#each_char を使用してください。

使用すると警告メッセージが表示されます。

self に含まれる文字を一文字ずつブロックに渡して評価します。

self は読み込み用にオープンされていなければなりません。

ブロックを省略した場合は各文字について繰り返す Enumerator を返します。

@raise IOError self が読み込み用にオープンされていない場合に発生します。


@see IO#each_char

絞り込み条件を変える

Mutex#unlock -> self (367.0)

mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。

mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。

@return self を返します。

例:

m = Mutex.new
begin
m.lock
# critical part
ensure
m.unlock
end

Mutex はロックしたスレッド以外からロックを開放することは出来ません。
ロックしたスレッド以外から unlock が呼ばれると ThreadError が発生します。

m = Mutex.new
m.lock
Thread.new do
m.unlock # => Thr...

Array#uniq! -> self | nil (364.0)

uniq は配列から重複した要素を取り除いた新しい配列を返します。 uniq! は削除を破壊的に行い、削除が行われた場合は self を、 そうでなければnil を返します。

uniq は配列から重複した要素を取り除いた新しい配列を返します。
uniq! は削除を破壊的に行い、削除が行われた場合は self を、
そうでなければnil を返します。

取り除かれた要素の部分は前に詰められます。
要素の重複判定は、Object#eql? により行われます。

//emlist[例][ruby]{
p [1, 1, 1].uniq # => [1]
p [1, 4, 1].uniq # => [1, 4]
p [1, 3, 2, 2, 3].uniq # => [1, 3, 2]
//}

ブロックが与えられた場合、ブロックが返した...

Array#uniq! {|item| ... } -> self | nil (364.0)

uniq は配列から重複した要素を取り除いた新しい配列を返します。 uniq! は削除を破壊的に行い、削除が行われた場合は self を、 そうでなければnil を返します。

uniq は配列から重複した要素を取り除いた新しい配列を返します。
uniq! は削除を破壊的に行い、削除が行われた場合は self を、
そうでなければnil を返します。

取り除かれた要素の部分は前に詰められます。
要素の重複判定は、Object#eql? により行われます。

//emlist[例][ruby]{
p [1, 1, 1].uniq # => [1]
p [1, 4, 1].uniq # => [1, 4]
p [1, 3, 2, 2, 3].uniq # => [1, 3, 2]
//}

ブロックが与えられた場合、ブロックが返した...

Integer#to_i -> self (364.0)

self を返します。

self を返します。

//emlist[][ruby]{
10.to_i # => 10
//}

Integer#to_int -> self (364.0)

self を返します。

self を返します。

//emlist[][ruby]{
10.to_i # => 10
//}

絞り込み条件を変える

Symbol#intern -> self (364.0)

self を返します。

self を返します。

例:

:foo.intern # => :foo

@see String#intern

Symbol#to_sym -> self (364.0)

self を返します。

self を返します。

例:

:foo.intern # => :foo

@see String#intern

ARGF.class#binmode -> self (361.0)

self をバイナリモードにします。一度バイナリモードになった後は非バイナリ モードに戻る事はできません。

self をバイナリモードにします。一度バイナリモードになった後は非バイナリ
モードに戻る事はできません。

バイナリモード下では以下のように動作します。

* 改行の変換を停止する
* 文字エンコーディングの変換を停止する
* 内容を ASCII-8BIT として扱う

例:
# test1.png - 164B
# test2.png - 128B
# test1.png + test2.png = 292B

# $ ruby test.rb test1.png test2.png

ARGF.binmode
ARGF.read.size # => 29...

ARGF.class#each_codepoint { |c| ... } -> self (361.0)

self の各コードポイントに対して繰り返しブロックを呼びだします。

self の各コードポイントに対して繰り返しブロックを呼びだします。

ブロックの引数にはコードポイントを表す整数が渡されます。

ブロックを省略した場合には、Enumerator を返します。

例:
# $ echo "line1\n" > test1.txt
# $ echo "line2\n" > test2.txt
# $ ruby test.rb test1.txt test2.txt

# test.rb
ARGF.each_codepoint # => #<Enumerator: ARGF:each_codepoint>
...

ARGF.class#skip -> self (361.0)

現在開いている処理対象のファイルをクローズします。 次回の読み込みは次の引数が処理対象になります。 self を返します。

現在開いている処理対象のファイルをクローズします。
次回の読み込みは次の引数が処理対象になります。
self を返します。

$ echo "foo" > foo
$ echo "bar" > bar

$ ruby argf.rb foo bar
ARGF.filename # => "foo"
ARGF.skip
ARGF.filename # => "bar"

絞り込み条件を変える

Array#compact! -> self | nil (361.0)

compact は自身から nil を取り除いた配列を生成して返します。 compact! は自身から破壊的に nil を取り除き、変更が 行われた場合は self を、そうでなければ nil を返します。

compact は自身から nil を取り除いた配列を生成して返します。
compact! は自身から破壊的に nil を取り除き、変更が
行われた場合は self を、そうでなければ nil を返します。

//emlist[例][ruby]{
ary = [1, nil, 2, nil, 3, nil]
p ary.compact #=> [1, 2, 3]
p ary #=> [1, nil, 2, nil, 3, nil]
ary.compact!
p ary #=> [1, 2, 3]
p ary.compact! #=> nil
//...

Array#flatten!(lv = nil) -> self | nil (361.0)

flatten は自身を再帰的に平坦化した配列を生成して返します。flatten! は 自身を再帰的かつ破壊的に平坦化し、平坦化が行われた場合は self をそうでない 場合は nil を返します。 lv が指定された場合、lv の深さまで再帰的に平坦化します。

flatten は自身を再帰的に平坦化した配列を生成して返します。flatten! は
自身を再帰的かつ破壊的に平坦化し、平坦化が行われた場合は self をそうでない
場合は nil を返します。
lv が指定された場合、lv の深さまで再帰的に平坦化します。

@param lv 平坦化の再帰の深さを整数で指定します。nil を指定した場合、再
帰の深さの制限無しに平坦化します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。

@raise TypeError 引数に整数以外の(...

Array#reverse! -> self (361.0)

reverse は自身の要素を逆順に並べた新しい配列を生成して返します。 reverse! は自身を破壊的に並べ替えます。 reverse! は self を返します。

reverse は自身の要素を逆順に並べた新しい配列を生成して返します。
reverse! は自身を破壊的に並べ替えます。
reverse! は self を返します。

//emlist[例][ruby]{
a = ["a", 2, true]
p a.reverse #=> [true, 2, "a"]
p a #=> ["a", 2, true] (変化なし)

a = ["a", 2, true]
p a.reverse! #=> [true, 2, "a"]
p a #=> [true, ...

Array#select! {|item| block } -> self | nil (361.0)

ブロックが真を返した要素を残し、偽を返した要素を自身から削除します。 変更があった場合は self を、 変更がなかった場合には nil を返します。

ブロックが真を返した要素を残し、偽を返した要素を自身から削除します。
変更があった場合は self を、
変更がなかった場合には nil を返します。

//emlist[例][ruby]{
a = %w{ a b c d e f }
a.select! {|v| v =~ /[a-z]/ } # => nil
a # => ["a", "b", "c", "d", "e", "f"]
//}

ブロックが与えられなかった場合は、自身と select! から生成した
Enumerator オブジェクトを返します。

@see Array#keep_if, Array#reject!

Array#to_ary -> self (361.0)

self をそのまま返します。

self をそのまま返します。

//emlist[例][ruby]{
class SubArray < Array; end
ary1 = Array([1, 2, 3, 4])
ary2 = SubArray([1, 2, 3, 4])

ary1.to_ary # => [1, 2, 3, 4]
ary1.to_ary.class # => Array

ary2.to_ary # => [1, 2, 3, 4]
ary2.to_ary.class # => SubArray
//}

@see Array#to_a

絞り込み条件を変える

Complex#to_c -> self (361.0)

self を返します。

self を返します。

//emlist[例][ruby]{
Complex(2).to_c # => (2+0i)
Complex(-8, 6).to_c # => (-8+6i)
//}

Enumerator::Lazy#lazy -> self (361.0)

self を返します。

self を返します。

//emlist[例][ruby]{
lazy = (100..Float::INFINITY).lazy
p lazy.lazy # => #<Enumerator::Lazy: 100..Infinity>
p lazy == lazy.lazy # => true
//}

Exception#exception -> self (361.0)

引数を指定しない場合は self を返します。引数を指定した場合 自身のコピー を生成し Exception#message 属性を error_message にして返します。

引数を指定しない場合は self を返します。引数を指定した場合 自身のコピー
を生成し Exception#message 属性を error_message にして返します。

Kernel.#raise は、実質的に、例外オブジェクトの exception
メソッドの呼び出しです。

@param error_message エラーメッセージを表す文字列を指定します。

//emlist[例][ruby]{
begin
# ... # 何か処理
rescue => e
raise e.exception("an error occurs during hogeho...

Float#to_f -> self (361.0)

self を返します。

self を返します。

//emlist[例][ruby]{
3.14.to_f # => 3.14
//}

Hash#to_hash -> self (361.0)

self を返します。

self を返します。

//emlist[例][ruby]{
hash = {}
p hash.to_hash # => {}
p hash.to_hash == hash # => true
//}

@see Object#to_hash, Hash#to_h

絞り込み条件を変える

IO#to_io -> self (361.0)

self を返します。

self を返します。

Numeric#+@ -> self (361.0)

単項演算子の + です。 self を返します。

単項演算子の + です。
self を返します。

//emlist[例][ruby]{
+ 10 # => 10
+ (-10) # => -10
+ 0.1 # => 0.1
+ (3r) # => (3/1)
+ (1+3i) # => (1+3i)
//}

Proc#to_proc -> self (361.0)

self を返します。

self を返します。

//emlist[例][ruby]{
pr = proc {}
p pr == pr.to_proc # => true
//}

String#bytes {|byte| ... } -> self (361.0)

文字列の各バイトを数値の配列で返します。(self.each_byte.to_a と同じです)

文字列の各バイトを数値の配列で返します。(self.each_byte.to_a と同じです)

//emlist[例][ruby]{
"str".bytes # => [115, 116, 114]
//}

ブロックが指定された場合は String#each_byte と同じように動作します。

Ruby 2.6 までは deprecated の警告が出ますが、Ruby 2.7 で警告は削除されました。

@see String#each_byte

String#chars {|cstr| block } -> self (361.0)

文字列の各文字を文字列の配列で返します。(self.each_char.to_a と同じです)

文字列の各文字を文字列の配列で返します。(self.each_char.to_a と同じです)

//emlist[例][ruby]{
"hello世界".chars # => ["h", "e", "l", "l", "o", "世", "界"]
//}

ブロックが指定された場合は String#each_char と同じように動作します。

Ruby 2.6 までは deprecated の警告が出ますが、Ruby 2.7 で警告は削除されました。

@see String#each_char

絞り込み条件を変える

String#clear -> self (361.0)

文字列の内容を削除して空にします。 self を返します。

文字列の内容を削除して空にします。
self を返します。

//emlist[例][ruby]{
str = "abc"
str.clear
p str # => ""

str = ""
str.clear
p str # => ""
//}

String#codepoints {|codepoint| block } -> self (361.0)

文字列の各コードポイントの配列を返します。(self.each_codepoint.to_a と同じです)

文字列の各コードポイントの配列を返します。(self.each_codepoint.to_a と同じです)

//emlist[例][ruby]{
#coding:UTF-8
"hello わーるど".codepoints
# => [104, 101, 108, 108, 111, 32, 12431, 12540, 12427, 12393]
//}

ブロックが指定された場合は String#each_codepoint と同じように動作します。

Ruby 2.6 までは deprecated の警告が出ますが、Ruby 2.7 で警告は削除されました。

@see String#e...

String#insert(pos, other) -> self (361.0)

pos 番目の文字の直前に文字列 other を挿入します。 self[pos, 0] = other と同じ操作です。

pos 番目の文字の直前に文字列 other を挿入します。
self[pos, 0] = other と同じ操作です。

@param pos 文字列を挿入するインデックス
@param other 挿入する文字列

//emlist[例][ruby]{
str = "foobaz"
str.insert(3, "bar")
p str # => "foobarbaz"
//}

@see String#[]=

String#lines(rs = $/) {|line| ... } -> self (361.0)

文字列中の各行を文字列の配列で返します。(self.each_line.to_a と同じです)

文字列中の各行を文字列の配列で返します。(self.each_line.to_a と同じです)

//emlist[][ruby]{
"aa\nbb\ncc\n".lines # => ["aa\n", "bb\n", "cc\n"]
//}

行の区切りは rs に指定した文字列で、 そのデフォルト値は変数 $/ の値です。
各 line には区切りの文字列も含みます。

rs に nil を指定すると行区切りなしとみなします。 rs に空文字列 "" を指
定すると「パラグラフモード」になり、 改行コードが 2 つ以上連続するとこ
ろで文字列を分割します (つまり空行で分割します)。

...

String#upcase! -> self | nil (361.0)

ASCII 文字列の範囲内で 'a' から 'z' までの アルファベット小文字を全て大文字にします。 このメソッドは self を破壊的に変更して返しますが、 置換が起こらなかった場合は nil を返します。

ASCII 文字列の範囲内で 'a' から 'z' までの
アルファベット小文字を全て大文字にします。
このメソッドは self を破壊的に変更して返しますが、
置換が起こらなかった場合は nil を返します。

このメソッドはマルチバイト文字列を認識しますが、
それはあくまでも「1 文字を 1 文字として認識する」だけであって、
いわゆる全角アルファベットの大文字小文字までは変換しません。

//emlist[例][ruby]{
buf = "stRIng? STring."
buf.upcase!
p buf # => "STRING? STRING."
//}

@see Stri...

絞り込み条件を変える

String#upto(max, exclusive = false) {|s| ... } -> self (361.0)

self から始めて max まで 「次の文字列」を順番にブロックに与えて繰り返します。 「次」の定義については String#succ を参照してください。

self から始めて max まで
「次の文字列」を順番にブロックに与えて繰り返します。
「次」の定義については String#succ を参照してください。

たとえば以下のコードは a, b, c, ... z, aa, ... az, ..., za を
出力します。

//emlist[][ruby]{
("a" .. "za").each do |str|
puts str
end
'a'.upto('za') do |str|
puts str
end
//}

@param max 繰り返しをやめる文字列

@param exclusive max を含むかどうか...

String#gsub!(pattern, replace) -> self | nil (358.0)

文字列中で pattern にマッチする部分全てを文字列 replace に破壊的に置き換えます。

文字列中で pattern にマッチする部分全てを文字列 replace に破壊的に置き換えます。

置換文字列 replace 中の \& と \0 はマッチした部分文字列に、
\1 ... \9 は n 番目の括弧の内容に置き換えられます。
置換文字列内では \`、\'、\+ も使えます。
これらは $`、$'、$+ に対応します。

gsub! は通常 self を変更して返しますが、
置換が起こらなかった場合は nil を返します。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く...

String#sub!(pattern, replace) -> self | nil (358.0)

文字列中で pattern にマッチした最初の部分を文字列 replace へ破壊的に置き換えます。

文字列中で pattern にマッチした最初の部分を文字列 replace へ破壊的に置き換えます。

置換文字列 replace 中の \& と \0 はマッチした部分文字列に、
\1 ... \9 は n 番目の括弧の内容に置き換えられます。
置換文字列内では \`、\'、\+ も使えます。
これらは $`、$'、$+ に対応します。

sub! は通常 self を変更して返しますが、
置換が起こらなかった場合は nil を返します。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く...

Enumerable#inject(init = self.first) {|result, item| ... } -> object (352.0)

リストのたたみこみ演算を行います。

リストのたたみこみ演算を行います。

最初に初期値 init と self の最初の要素を引数にブロックを実行します。
2 回目以降のループでは、前のブロックの実行結果と
self の次の要素を引数に順次ブロックを実行します。
そうして最後の要素まで繰り返し、最後のブロックの実行結果を返します。

要素が存在しない場合は init を返します。

初期値 init を省略した場合は、
最初に先頭の要素と 2 番目の要素をブロックに渡します。
また要素が 1 つしかなければブロックを実行せずに最初の要素を返します。
要素がなければブロックを実行せずに nil を返します。

@param in...

Enumerable#reduce(init = self.first) {|result, item| ... } -> object (352.0)

リストのたたみこみ演算を行います。

リストのたたみこみ演算を行います。

最初に初期値 init と self の最初の要素を引数にブロックを実行します。
2 回目以降のループでは、前のブロックの実行結果と
self の次の要素を引数に順次ブロックを実行します。
そうして最後の要素まで繰り返し、最後のブロックの実行結果を返します。

要素が存在しない場合は init を返します。

初期値 init を省略した場合は、
最初に先頭の要素と 2 番目の要素をブロックに渡します。
また要素が 1 つしかなければブロックを実行せずに最初の要素を返します。
要素がなければブロックを実行せずに nil を返します。

@param in...

絞り込み条件を変える

Array#keep_if {|item| ... } -> self (349.0)

ブロックが真を返した要素を残し、偽を返した要素を自身から削除します。

ブロックが真を返した要素を残し、偽を返した要素を自身から削除します。

//emlist[例][ruby]{
a = %w{ a b c d e f }
a.keep_if {|v| v =~ /[aeiou]/} # => ["a", "e"]
a # => ["a", "e"]
//}

keep_if は常に self を返しますが、Array#select! は要素が 1 つ以上削除されれば self を、
1 つも削除されなければ nil を返します。

//emlist[例][ruby]{
a = %w{ a b c d e f }
a.keep_if {|v| v =~ /...

Hash#replace(other) -> self (349.0)

ハッシュの内容を other の内容で置き換えます。

ハッシュの内容を other の内容で置き換えます。

デフォルト値の設定もotherの内容になります。
otherがハッシュではない場合、otherのメソッドto_hashを使って暗黙の変換を試みます。

self = other.to_hash.dup と同じです。

@param other ハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@return self を返します。

//emlist[例][ruby]{
foo = {1 => 'a', 2 => 'b'}
bar = {2 => 'B', 3 => 'C'}

foo.replace(b...

Module#public(*name) -> self (349.0)

メソッドを public に設定します。

メソッドを public に設定します。

引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドをどんな形式でも呼び出せるように(public)設定します。

引数が与えられた時には引数によって指定されたメソッドを public に設
定します。

可視性については d:spec/def#limit を参照して下さい。

@param name 0 個以上の String または Symbol を指定します。

@raise NameError 存在しないメソッド名を指定した場合に発生します。

//emlist[例][ruby]{
def foo() 1 en...

Module#undef_method(*name) -> self (349.0)

このモジュールのインスタンスメソッド name を未定義にします。

このモジュールのインスタンスメソッド name を未定義にします。

@param name 0 個以上の String か Symbol を指定します。

@raise NameError 指定したインスタンスメソッドが定義されていない場合に発生します。

=== 「未定義にする」とは
このモジュールのインスタンスに対して name という
メソッドを呼び出すことを禁止するということです。
スーパークラスの定義が継承されるかどうかという点において、
「未定義」は「メソッドの削除」とは区別されます。
以下のコード例を参照してください。

//emlist[例][ruby]{
class A
...

String#gsub!(pattern) {|matched| .... } -> self | nil (343.0)

文字列中で pattern にマッチする部分全てを順番にブロックに渡し、 その評価結果に置き換えます。

文字列中で pattern にマッチする部分全てを順番にブロックに渡し、
その評価結果に置き換えます。

また、ブロックなしの場合と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 置換した場合は self、置換しなかった場合は nil

//emlist[例][ruby]{
str = 'abcabc'
str.gsub!(/b/) {|s| s.u...

絞り込み条件を変える

String#sub!(pattern) {|matched| .... } -> self | nil (343.0)

文字列中で pattern にマッチした最初の部分をブロックに渡し、 その評価結果へ破壊的に置き換えます。

文字列中で pattern にマッチした最初の部分をブロックに渡し、
その評価結果へ破壊的に置き換えます。

また、ブロックなしの sub と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 置換した場合は self、置換しなかった場合は nil

//emlist[例][ruby]{
str = 'abcabc'
str.sub!(/b/) {|s|...

Array#permutation(n = self.length) -> Enumerator (337.0)

サイズ n の順列をすべて生成し,それを引数としてブロックを実行します。

サイズ n の順列をすべて生成し,それを引数としてブロックを実行します。

引数を省略した場合は配列の要素数と同じサイズの順列に対してブロックを実
行します。

得られる順列の順序は保証されません。ブロックなしで呼び出されると, 順列
を生成する Enumerator オブジェクトを返します。

@param n 生成する配列のサイズを整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。

@raise TypeError 引数に整数以外の(暗黙の型変換が行えない)オブジェクトを
...

IO#reopen(path) -> self (337.0)

path で指定されたファイルにストリームを繋ぎ換えます。

path で指定されたファイルにストリームを繋ぎ換えます。

第二引数を省略したとき self のモードをそのまま引き継ぎます。
IO#pos, IO#lineno などはリセットされます。

@param path パスを表す文字列を指定します。

@param mode パスを開く際のモードを文字列で指定します。

@raise Errno::EXXX 失敗した場合に発生します。

//emlist[例][ruby]{
IO.write("testfile", "This is line one\nThis is line two\n")
f1 = File.new("testfile"...

IO#reopen(path, mode) -> self (337.0)

path で指定されたファイルにストリームを繋ぎ換えます。

path で指定されたファイルにストリームを繋ぎ換えます。

第二引数を省略したとき self のモードをそのまま引き継ぎます。
IO#pos, IO#lineno などはリセットされます。

@param path パスを表す文字列を指定します。

@param mode パスを開く際のモードを文字列で指定します。

@raise Errno::EXXX 失敗した場合に発生します。

//emlist[例][ruby]{
IO.write("testfile", "This is line one\nThis is line two\n")
f1 = File.new("testfile"...

Hash#each {|key, value| ... } -> self (334.0)

ハッシュのキーと値を引数としてブロックを評価します。

ハッシュのキーと値を引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合 self を、
無しで呼ばれた場合 Enumerator を返します。

each_pair は each のエイリアスです。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each {|a| p a}
#=> [:a, 1]
# [:b, 2]

{:a=>1, :b=>2}.each {|k, v| p [k, v]}
#=> [:a, 1]
# [:b, 2]

p({:a=>1, :b=>2}.each_pair) # => #<...

絞り込み条件を変える

Hash#each_pair {|key, value| ... } -> self (334.0)

ハッシュのキーと値を引数としてブロックを評価します。

ハッシュのキーと値を引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合 self を、
無しで呼ばれた場合 Enumerator を返します。

each_pair は each のエイリアスです。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each {|a| p a}
#=> [:a, 1]
# [:b, 2]

{:a=>1, :b=>2}.each {|k, v| p [k, v]}
#=> [:a, 1]
# [:b, 2]

p({:a=>1, :b=>2}.each_pair) # => #<...

Array#<<(obj) -> self (331.0)

指定された obj を自身の末尾に破壊的に追加します。

指定された obj を自身の末尾に破壊的に追加します。

//emlist[例][ruby]{
ary = [1]
ary << 2
p ary # [1, 2]
//}

またこのメソッドは self を返すので、以下のように連続して
書くことができます。

//emlist[例][ruby]{
ary = [1]
ary << 2 << 3 << 4
p ary #=> [1, 2, 3, 4]
//}

@param obj 自身に加えたいオブジェクトを指定します。Array#push と違って引数は一つしか指定できません。

@see Array#push

Array#combination(n) {|c| block } -> self (331.0)

サイズ n の組み合わせをすべて生成し、それを引数としてブロックを実行します。

サイズ n の組み合わせをすべて生成し、それを引数としてブロックを実行します。

得られる組み合わせの順序は保証されません。ブロックなしで呼び出されると、組み合わせ
を生成する Enumerator オブジェクトを返します。

@param n 生成される配列のサイズを整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。

@raise TypeError 引数に整数以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。

//emlist[...

Array#product(*lists) { |e| ... } -> self (331.0)

レシーバの配列と引数で与えられた配列(複数可)のそれぞれから要素を1 個ずつとって配列とし,それらのすべての配列を要素とする配列を返します。

レシーバの配列と引数で与えられた配列(複数可)のそれぞれから要素を1
個ずつとって配列とし,それらのすべての配列を要素とする配列を返します。

返される配列の長さは,レシーバと引数で与えられた配列の長さのすべての積にな
ります。


@param lists 配列。複数指定可能。

//emlist[例][ruby]{
[1,2,3].product([4,5]) # => [[1,4],[1,5],[2,4],[2,5],[3,4],[3,5]]
[1,2].product([1,2]) # => [[1,1],[1,2],[2,1],[2,2]]
[1,2].prod...

Array#repeated_combination(n) { |c| ... } -> self (331.0)

サイズ n の重複組み合わせをすべて生成し、それを引数としてブロックを実行 します。

サイズ n の重複組み合わせをすべて生成し、それを引数としてブロックを実行
します。

得られる組み合わせの順序は保証されません。ブロックなしで呼び出されると、
組み合わせを生成する Enumerator オブジェクトを返します。

@param n 生成される配列のサイズを整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。

@raise TypeError 引数に整数以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。

//emli...

絞り込み条件を変える

Array#repeated_permutation(n) { |p| ... } -> self (331.0)

サイズ n の重複順列をすべて生成し,それを引数としてブロックを実行します。

サイズ n の重複順列をすべて生成し,それを引数としてブロックを実行します。

得られる順列の順序は保証されません。ブロックなしで呼び出されると, 順列
を生成する Enumerator オブジェクトを返します。

@param n 生成する配列のサイズを整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。

@raise TypeError 引数に整数以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。

//emlist[例][ruby...

Enumerator#rewind -> self (331.0)

列挙状態を巻き戻します。

列挙状態を巻き戻します。

next メソッドによる外部列挙の状態を最初まで巻き戻します。 self を返します。

内包するオブジェクトが rewind メソッドを持つとき(respond_to?(:rewind) に
真を返すとき) は、その rewind メソッドを呼び出します。

@see Enumerator#next

//emlist[例][ruby]{
str = "xyz"
enum = str.each_byte

p enum.next # => 120
p enum.next # => 121
enum.rewind
p enum.next # => 120
//}

Hash#clear -> self (331.0)

ハッシュの中身を空にします。

ハッシュの中身を空にします。

空にした後のselfを返します。
デフォルト値の設定はクリアされません。

//emlist[例][ruby]{
h = Hash.new("default value")
h[:some] = "some"
p h #=> {:some=>"some"}

h.clear

p h #=> {}
p h.default #=> "default value"
//}

Hash#each_key {|key| ... } -> self (331.0)

ハッシュのキーを引数としてブロックを評価します。

ハッシュのキーを引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合selfを、
無しで呼ばれた場合Enumeratorを返します。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each_key {|k| p k}
#=> :a
# :b

p({:a=>1, :b=>2}.each_key) # => #<Enumerator: {:a=>1, :b=>2}:each_key>
//}

@see Hash#each_pair,Hash#each_value

Hash#each_value {|value| ... } -> self (331.0)

ハッシュの値を引数としてブロックを評価します。

ハッシュの値を引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合selfを、
無しで呼ばれた場合 Enumerator を返します。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each_value {|v| p v}
#=> 1
# 2

p({:a=>1, :b=>2}.each_value) # => #<Enumerator: {:a=>1, :b=>2}:each_value>
//}

@see Hash#each_pair,Hash#each_key

絞り込み条件を変える

Hash#rehash -> self (331.0)

キーのハッシュ値を再計算します。

キーのハッシュ値を再計算します。

キーになっているオブジェクトの内容が変化した時など、
ハッシュ値が変わってしまった場合はこのメソッドを使ってハッシュ値を再計算しない
限り、そのキーに対応する値を取り出すことができなくなります。

@raise RuntimeError Hash#eachなどのイテレータの評価途中でrehashすると発生します。
@return selfを返します。

//emlist[例][ruby]{
a = [ "a", "b" ]
h = { a => 100 }

p h[a] #=> 100

a[0] = "z"
p h[a] #=>...

Module#alias_method(new, original) -> self (331.0)

メソッドの別名を定義します。

メソッドの別名を定義します。

//emlist[例][ruby]{
module Kernel
alias_method :hoge, :puts # => Kernel
end
//}

alias との違いは以下の通りです。

* メソッド名は String または Symbol で指定します
* グローバル変数の別名をつけることはできません

また、クラスメソッドに対して使用することはできません。

@param new 新しいメソッド名。String または Symbol で指定します。

@param original 元のメソッド名。String または Symbo...

Module#module_function(*name) -> self (331.0)

メソッドをモジュール関数にします。

メソッドをモジュール関数にします。

引数が与えられた時には、
引数で指定されたメソッドをモジュール関数にします。
引数なしのときは今後このモジュール定義文内で
新しく定義されるメソッドをすべてモジュール関数にします。

モジュール関数とは、プライベートメソッドであると同時に
モジュールの特異メソッドでもあるようなメソッドです。
例えば Math モジュールのメソッドはすべてモジュール関数です。

self を返します。

@param name String または Symbol を 0 個以上指定します。

=== 注意
module_function はメソッドに「モジュール関数」とい...

Module#private_class_method(*name) -> self (331.0)

name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を private に変更します。

name で指定したクラスメソッド (クラスの特異メソッド) の
可視性を private に変更します。

@param name 0 個以上の String または Symbol を指定します。

//emlist[例][ruby]{
module Foo
def self.foo; end
end

Foo.singleton_class.private_method_defined?(:foo) # => false
Foo.private_class_method(:foo) # => Foo
Foo.singleton_class.private_method_define...

Module#private_constant(*name) -> self (331.0)

name で指定した定数の可視性を private に変更します。

name で指定した定数の可視性を private に変更します。

@param name 0 個以上の String か Symbol を指定します。

@raise NameError 存在しない定数を指定した場合に発生します。

@return self を返します。

@see Module#public_constant, Object#untrusted?

//emlist[例][ruby]{
module Foo
BAR = 'bar'
class Baz; end
QUX = 'qux'
class Quux; end

private_constan...

絞り込み条件を変える

<< 1 2 3 ... > >>