るりまサーチ (Ruby 2.3.0)

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

別のキーワード

  1. _builtin push
  2. csv push
  3. row push
  4. array push
  5. queue push

ライブラリ

オブジェクト

検索結果

static void pushback(int c) (78301.0)

入力に一文字戻します。 c が EOF (-1) のときはなにもしません。

入力に一文字戻します。
c が EOF (-1) のときはなにもしません。

Array#push(*obj) -> self (54358.0)

指定された obj を順番に配列の末尾に追加します。 引数を指定しなければ何もしません。

指定された obj を順番に配列の末尾に追加します。
引数を指定しなければ何もしません。

@param obj 自身に追加したいオブジェクトを指定します。

//emlist[例][ruby]{
array = [1, 2, 3]
array.push 4
array.push [5, 6]
array.push 7, 8
p array # => [1, 2, 3, 4, [5, 6], 7, 8]
//}

@see Array#pop, Array#shift, Array#unshift, Array#<<

Readline::HISTORY.push(*string) -> self (54340.0)

ヒストリの最後に string で指定した文字列を追加します。複数の string を指定できます。 self を返します。

ヒストリの最後に string で指定した文字列を追加します。複数の string を指定できます。
self を返します。

@param string 文字列を指定します。複数指定できます。

例: "foo"を追加する。

require "readline"

Readline::HISTORY.push("foo")
p Readline::HISTORY[-1] #=> "foo"

例: "foo"、"bar"を追加する。

require "readline"

Readline::HISTORY.push("foo", "bar")
p Readli...

CSV::Table#push(*rows) -> self (54322.0)

複数の行を追加するためのショートカットです。

複数の行を追加するためのショートカットです。

以下と同じです。
//emlist[][ruby]{
rows.each {|row| self << row }
//}

@param rows CSV::Row のインスタンスか配列を指定します。

//emlist[例][ruby]{
require 'csv'
csv = CSV.new("a,b,c\n1,2,3", headers: true)
table = csv.read
rows = [
CSV::Row.new(table.headers, [4, 5, 6]),
[7, 8, 9]
]

table.push(...

CSV::Row#push(*args) -> self (54304.0)

複数のフィールドを追加するためのショートカットです。

複数のフィールドを追加するためのショートカットです。

以下とおなじです:
args.each { |arg| csv_row << arg }

@return メソッドチェーンのために自身を返します。

絞り込み条件を変える

Thread::SizedQueue#push(obj, non_block = false) -> () (45322.0)

キューに与えられたオブジェクトを追加します。

キューに与えられたオブジェクトを追加します。

キューのサイズが Thread::SizedQueue#max に達している場合は、
non_block が真でなければ、キューのサイズが Thread::SizedQueue#max
より小さくなるまで他のスレッドに実行を譲ります。
その後、キューに与えられたオブジェクトを追加します。

@param obj キューに追加したいオブジェクトを指定します。
@param non_block true を与えると、キューが一杯の時に例外 ThreadError が発生します。

@see Thread::Queue#push

Psych::Visitors::YAMLTree#push(object) (45304.0)

変換対象の Ruby オブジェクトを追加します。

変換対象の Ruby オブジェクトを追加します。

@param object YAML AST へ変換する Ruby オブジェクト

REXML::Parent#push(object) -> () (45304.0)

object を子ノード列の最後に追加します。

object を子ノード列の最後に追加します。

object の親ノードには self が設定されます。

@param object 追加するノード

Thread::Queue#push(value) -> () (45304.0)

キューの値を追加します。待っているスレッドがいれば実行を再開 させます。返り値は不定です。

キューの値を追加します。待っているスレッドがいれば実行を再開
させます。返り値は不定です。

Socket::Constants::TCP_NOPUSH -> Integer (18349.0)

Don't push the last block of write。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Don't push the last block of write。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see tcp(4freebsd), tcp(7linux)

絞り込み条件を変える

Socket::TCP_NOPUSH -> Integer (18349.0)

Don't push the last block of write。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Don't push the last block of write。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see tcp(4freebsd), tcp(7linux)

VALUE rb_ary_push(VALUE ary, VALUE item) (18337.0)

配列 ary の末尾に item を追加します。

配列 ary の末尾に item を追加します。

対応するRubyコード

ary.push(item) または
ary << item

使用例

VALUE ary = rb_ary_new();
char line[4096];
while ((gets(line)) != NULL){
item = process_apache_log(line);
rb_ary_push(ary, item);
}

Gem::QuickLoader#push_all_highest_version_gems_on_load_path (18304.0)

prelude.c で定義されている内部用のメソッドです。

prelude.c で定義されている内部用のメソッドです。

Gem::QuickLoader#push_gem_version_on_load_path (18304.0)

prelude.c で定義されている内部用のメソッドです。

prelude.c で定義されている内部用のメソッドです。

Shell#pushd(path = nil, &block) -> object (18301.0)

カレントディレクトリをディレクトリスタックにつみ, カレントディレク トリをpathにする. pathが省略されたときには, カレントディレクトリと ディレクトリスタックのトップを交換する. イテレータとして呼ばれたと きには, ブロック実行中のみpushdする.

カレントディレクトリをディレクトリスタックにつみ, カレントディレク
トリをpathにする. pathが省略されたときには, カレントディレクトリと
ディレクトリスタックのトップを交換する. イテレータとして呼ばれたと
きには, ブロック実行中のみpushdする.

@param path カレントディレクトリをpathにする。文字列で指定します。

@param block イテレータとして呼ぶ場合, ブロックを指定します。

動作例
require 'shell'
Shell.verbose = false
sh = Shell.new
sh.pushd("/tmp"...

絞り込み条件を変える

Shell#pushdir(path = nil, &block) -> object (18301.0)

カレントディレクトリをディレクトリスタックにつみ, カレントディレク トリをpathにする. pathが省略されたときには, カレントディレクトリと ディレクトリスタックのトップを交換する. イテレータとして呼ばれたと きには, ブロック実行中のみpushdする.

カレントディレクトリをディレクトリスタックにつみ, カレントディレク
トリをpathにする. pathが省略されたときには, カレントディレクトリと
ディレクトリスタックのトップを交換する. イテレータとして呼ばれたと
きには, ブロック実行中のみpushdする.

@param path カレントディレクトリをpathにする。文字列で指定します。

@param block イテレータとして呼ぶ場合, ブロックを指定します。

動作例
require 'shell'
Shell.verbose = false
sh = Shell.new
sh.pushd("/tmp"...

static struct RVarmap * dyna_push(void) (18301.0)

ブロックローカル変数テーブルをプッシュします。

ブロックローカル変数テーブルをプッシュします。

static void local_push(int top) (18301.0)

ローカル変数テーブルをプッシュします。 プログラムのトップレベルをパースしているときは top を真にします。

ローカル変数テーブルをプッシュします。
プログラムのトップレベルをパースしているときは top を真にします。

void rb_dvar_push(ID id, VALUE value) (18301.0)

IRB::ExtendCommand::PushWorkspace (18049.0)

irb 中の irb_push_workspace コマンドのための拡張を定義したクラスです。

irb 中の irb_push_workspace コマンドのための拡張を定義したクラスです。

絞り込み条件を変える

irb/cmd/pushws (18049.0)

irb 中の irb_workspaces、irb_push_workspace、irb_pop_workspace コマンド のための拡張を定義したサブライブラリです。

irb 中の irb_workspaces、irb_push_workspace、irb_pop_workspace コマンド
のための拡張を定義したサブライブラリです。

このライブラリで定義されているメソッドはユーザが直接使用するものではあ
りません。

IRB::ExtendCommand::PushWorkspace#execute(*obj) -> [IRB::WorkSpace] (9001.0)

UNIX シェルコマンドの pushd と同じです。

UNIX シェルコマンドの pushd と同じです。

@param obj IRB::WorkSpace オブジェクトを指定します。複数指定した
場合は先頭のオブジェクトのみが設定されます。

Thread::SizedQueue#deq(non_block = false) -> object (85.0)

キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。

キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。

@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。

//emlist[例][ruby]{
require 'thread'

q = SizedQueue.new(4)

th1 = Thread.start do
while resource = q.pop
puts resource
end
end

[:resource1, :resource2, :resource3, nil].eac...

Thread::SizedQueue#pop(non_block = false) -> object (85.0)

キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。

キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。

@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。

//emlist[例][ruby]{
require 'thread'

q = SizedQueue.new(4)

th1 = Thread.start do
while resource = q.pop
puts resource
end
end

[:resource1, :resource2, :resource3, nil].eac...

Thread::SizedQueue#shift(non_block = false) -> object (85.0)

キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。

キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。

@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。

//emlist[例][ruby]{
require 'thread'

q = SizedQueue.new(4)

th1 = Thread.start do
while resource = q.pop
puts resource
end
end

[:resource1, :resource2, :resource3, nil].eac...

絞り込み条件を変える

ruby 1.6 feature (73.0)

ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。

ruby 1.6 feature
ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン
になります。

((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。

== 1.6.8 (2002-12-24) -> stable-snapshot

: 2003-01-22: errno

EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていま...

Psych::Stream (55.0)

入力されたオブジェクトから変換された YAML document を指定した IO に出力する機能を持つクラスです。

入力されたオブジェクトから変換された YAML document を指定した
IO に出力する機能を持つクラスです。

start で変換を開始し、push で変換する Ruby オブジェクトを渡し、
最後に finish を呼ぶことで変換を完了します。
stream = Psych::Stream.new($stdout)
stream.start
stream.push({:foo => 'bar'})
stream.finish

YAML document は(バッファリングされずに)直接 $stdout に出力されます。

finish を確実に呼び出すためには Ps...

Thread#join -> self (55.0)

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

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

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

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

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

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

threads = ...

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

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

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

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

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

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

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

threads = ...

Thread#value -> object (55.0)

スレッド self が終了するまで待ち(Thread#join と同じ)、 そのスレッドのブロックが返した値を返します。スレッド実行中に例外が 発生した場合には、その例外を再発生させます。

スレッド self が終了するまで待ち(Thread#join と同じ)、
そのスレッドのブロックが返した値を返します。スレッド実行中に例外が
発生した場合には、その例外を再発生させます。

スレッドが Thread#kill によって終了した場合は、返り値は不定です。

以下は、生成したすべてのスレッドの終了を待ち結果を出力する例です。

threads = []
threads.push(Thread.new { n = rand(5); sleep n; n })
threads.push(Thread.new { n = rand(5); sleep n; n })...

絞り込み条件を変える

Thread::ConditionVariable (55.0)

スレッドの同期機構の一つである状態変数を実現するクラスです。

スレッドの同期機構の一つである状態変数を実現するクラスです。

以下も ConditionVariable を理解するのに参考になります。

https://ruby-doc.com/docs/ProgrammingRuby/html/tut_threads.html#UF

=== Condition Variable とは

あるスレッド A が排他領域で動いていたとします。スレッド A は現在空いていない
リソースが必要になったので空くまで待つことにしたとします。これはうまくいきません。
なぜなら、スレッド A は排他領域で動いているわけですから、他のスレッドは動くことが
できません。リ...

1.6.8から1.8.0への変更点(まとめ) (37.0)

1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))

1.6.8から1.8.0への変更点(まとめ)
* ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>))
* ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>))
* ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))...

Array#<<(obj) -> self (37.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

Forwardable#def_delegator(accessor, method, ali = method) -> () (37.0)

メソッドの委譲先を設定します。

メソッドの委譲先を設定します。

@param accessor 委譲先のオブジェクト

@param method 委譲先のメソッド

@param ali 委譲元のメソッド

委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるようになります。

委譲元と委譲先のメソッド名が同じ場合は, ali を省略することが可能です。

def_delegator は def_instance_delegator の別名になります。

例:

require 'forwardable'
class MyQueue
exten...

Forwardable#def_instance_delegator(accessor, method, ali = method) -> () (37.0)

メソッドの委譲先を設定します。

メソッドの委譲先を設定します。

@param accessor 委譲先のオブジェクト

@param method 委譲先のメソッド

@param ali 委譲元のメソッド

委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるようになります。

委譲元と委譲先のメソッド名が同じ場合は, ali を省略することが可能です。

def_delegator は def_instance_delegator の別名になります。

例:

require 'forwardable'
class MyQueue
exten...

絞り込み条件を変える

Psych::Visitors::YAMLTree#start(encoding = Nodes::Stream::UTF8) -> Psych::Nodes::Stream (37.0)

Ruby オブジェクトから YAML AST への変換のための準備をします。

Ruby オブジェクトから YAML AST への変換のための準備をします。


Psych::Visitors::YAMLTree#push が呼び出されたとき、
まだこのメソッドが呼び出されていなければ push メソッドがこの
メソッドを呼び出し、変換の準備をします。

encoding には以下のいずれかを指定できます。
* Psych::Nodes::Node::UTF8
* Psych::Nodes::Node::UTF16BE
* Psych::Nodes::Node::UTF16LE

@param encoding YAML AST に設定するエンコーディング

Readline::HISTORY.each -> Enumerator (37.0)

ヒストリの内容に対してブロックを評価します。 ブロックパラメータにはヒストリの最初から最後までの内容を順番に渡します。

ヒストリの内容に対してブロックを評価します。
ブロックパラメータにはヒストリの最初から最後までの内容を順番に渡します。

例: ヒストリの内容を最初から順番に出力する。

require "readline"

Readline::HISTORY.push("foo", "bar", "baz")
Readline::HISTORY.each do |s|
p s #=> "foo", "bar", "baz"
end

例: Enumerator オブジェクトを返す場合。

require "readline"

Readline::HISTORY....

Readline::HISTORY.each {|string| ... } (37.0)

ヒストリの内容に対してブロックを評価します。 ブロックパラメータにはヒストリの最初から最後までの内容を順番に渡します。

ヒストリの内容に対してブロックを評価します。
ブロックパラメータにはヒストリの最初から最後までの内容を順番に渡します。

例: ヒストリの内容を最初から順番に出力する。

require "readline"

Readline::HISTORY.push("foo", "bar", "baz")
Readline::HISTORY.each do |s|
p s #=> "foo", "bar", "baz"
end

例: Enumerator オブジェクトを返す場合。

require "readline"

Readline::HISTORY....

Readline::HISTORY.pop -> String (37.0)

ヒストリの最後の内容を取り出します。 最後の内容は、ヒストリから取り除かれます。

ヒストリの最後の内容を取り出します。
最後の内容は、ヒストリから取り除かれます。

@raise NotImplementedError サポートしていない環境で発生します。

例:

require "readline"

Readline::HISTORY.push("foo", "bar", "baz")
p Readline::HISTORY.pop #=> "baz"
p Readline::HISTORY.pop #=> "bar"
p Readline::HISTORY.pop #=> "foo"

@see Readline::HISTORY.push...

Readline::HISTORY.shift -> String (37.0)

ヒストリの最初の内容を取り出します。 最初の内容は、ヒストリから取り除かれます。

ヒストリの最初の内容を取り出します。
最初の内容は、ヒストリから取り除かれます。

@raise NotImplementedError サポートしていない環境で発生します。

例:

require "readline"

Readline::HISTORY.push("foo", "bar", "baz")
p Readline::HISTORY.shift #=> "foo"
p Readline::HISTORY.shift #=> "bar"
p Readline::HISTORY.shift #=> "baz"

@see Readline::HISTOR...

絞り込み条件を変える

Thread::Queue#deq(non_block = false) -> object (37.0)

キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。

キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。

@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。

//emlist[例][ruby]{
require 'thread'

q = Queue.new

th1 = Thread.start do
while resource = q.pop
puts resource
end
end

[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}

t...

Thread::Queue#num_waiting -> Integer (37.0)

キューを待っているスレッドの数を返します。

キューを待っているスレッドの数を返します。

//emlist[例][ruby]{
require 'thread'

q = SizedQueue.new(1)
q.push(1)
t = Thread.new { q.push(2) }
sleep 0.05 until t.stop?
q.num_waiting # => 1

q.pop
t.join
//}

Thread::Queue#pop(non_block = false) -> object (37.0)

キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。

キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。

@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。

//emlist[例][ruby]{
require 'thread'

q = Queue.new

th1 = Thread.start do
while resource = q.pop
puts resource
end
end

[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}

t...

Thread::Queue#shift(non_block = false) -> object (37.0)

キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。

キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。

@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。

//emlist[例][ruby]{
require 'thread'

q = Queue.new

th1 = Thread.start do
while resource = q.pop
puts resource
end
end

[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}

t...

Thread::SizedQueue (37.0)

サイズの最大値を指定できる Thread::Queue です。

サイズの最大値を指定できる Thread::Queue です。

=== 例

283 より。q をサイズ 1 の SizedQueue オブジェクトに
することによって、入力される行と出力される行が同じ順序になります。
q = [] にすると入力と違った順序で行が出力されます。

require 'thread'

q = SizedQueue.new(1)

th = Thread.start {
while line = q.pop
print line
end
}

while l = gets
q.push(l)
end
...

絞り込み条件を変える

irb (37.0)

irb は Interactive Ruby の略です。 irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。

irb は Interactive Ruby の略です。
irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。

=== irb の使い方

Ruby さえ知っていれば irb を使うのは簡単です。
irb コマンドを実行すると、以下のようなプロンプトが表れます。

$ irb
irb(main):001:0>

あとは Ruby の式を入力するだけで、その式が実行され、結果が表示されます。

irb(main):001:0> 1+2
3
irb(main):002:0> class Foo
irb(main):003:1> def f...

Thread::SizedQueue#<<(obj) -> () (22.0)

キューに与えられたオブジェクトを追加します。

キューに与えられたオブジェクトを追加します。

キューのサイズが Thread::SizedQueue#max に達している場合は、
non_block が真でなければ、キューのサイズが Thread::SizedQueue#max
より小さくなるまで他のスレッドに実行を譲ります。
その後、キューに与えられたオブジェクトを追加します。

@param obj キューに追加したいオブジェクトを指定します。
@param non_block true を与えると、キューが一杯の時に例外 ThreadError が発生します。

@see Thread::Queue#push

Thread::SizedQueue#enq(obj, non_block = false) -> () (22.0)

キューに与えられたオブジェクトを追加します。

キューに与えられたオブジェクトを追加します。

キューのサイズが Thread::SizedQueue#max に達している場合は、
non_block が真でなければ、キューのサイズが Thread::SizedQueue#max
より小さくなるまで他のスレッドに実行を譲ります。
その後、キューに与えられたオブジェクトを追加します。

@param obj キューに追加したいオブジェクトを指定します。
@param non_block true を与えると、キューが一杯の時に例外 ThreadError が発生します。

@see Thread::Queue#push

Array#join(sep = $,) -> String (19.0)

配列の要素を文字列 sep を間に挟んで連結した文字列を返します。

配列の要素を文字列 sep を間に挟んで連結した文字列を返します。

文字列でない要素に対しては、to_str があれば to_str、なければ to_s した結果を連結します。
要素がまた配列であれば再帰的に (同じ sep を利用して)
join した文字列を連結します。
ただし、配列要素が自身を含むような無限にネストした配列に対しては、以下
のような結果になります。

//emlist[例][ruby]{
ary = [1,2,3]
ary.push ary
p ary # => [1, 2, 3, [...]]
p ary.join # => Argum...

Array#pop -> object | nil (19.0)

自身の末尾から要素を取り除いてそれを返します。 引数を指定した場合はその個数だけ取り除き、それを配列で返します。

自身の末尾から要素を取り除いてそれを返します。
引数を指定した場合はその個数だけ取り除き、それを配列で返します。

空配列の場合、n が指定されていない場合は nil を、
指定されている場合は空配列を返します。
また、n が自身の要素数より少ない場合はその要素数の配列を
返します。どちらの場合も自身は空配列となります。

返す値と副作用の両方を利用して、個数を指定して配列を 2 分する簡単な方法として使えます。

@param n 自身から取り除きたい要素の個数を整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
...

絞り込み条件を変える

Array#pop(n) -> Array (19.0)

自身の末尾から要素を取り除いてそれを返します。 引数を指定した場合はその個数だけ取り除き、それを配列で返します。

自身の末尾から要素を取り除いてそれを返します。
引数を指定した場合はその個数だけ取り除き、それを配列で返します。

空配列の場合、n が指定されていない場合は nil を、
指定されている場合は空配列を返します。
また、n が自身の要素数より少ない場合はその要素数の配列を
返します。どちらの場合も自身は空配列となります。

返す値と副作用の両方を利用して、個数を指定して配列を 2 分する簡単な方法として使えます。

@param n 自身から取り除きたい要素の個数を整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
...

Array#shift -> object | nil (19.0)

配列の先頭の要素を取り除いてそれを返します。 引数を指定した場合はその個数だけ取り除き、それを配列で返します。

配列の先頭の要素を取り除いてそれを返します。
引数を指定した場合はその個数だけ取り除き、それを配列で返します。

空配列の場合、n が指定されていない場合は nil を、
指定されている場合は空配列を返します。
また、n が自身の要素数より少ない場合はその要素数の配列を
返します。どちらの場合も自身は空配列となります。

返す値と副作用の両方を利用して、個数を指定して配列を 2 分する簡単な方法として使えます。

@param n 自身から取り除きたい要素の個数を非負整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
...

Array#shift(n) -> Array (19.0)

配列の先頭の要素を取り除いてそれを返します。 引数を指定した場合はその個数だけ取り除き、それを配列で返します。

配列の先頭の要素を取り除いてそれを返します。
引数を指定した場合はその個数だけ取り除き、それを配列で返します。

空配列の場合、n が指定されていない場合は nil を、
指定されている場合は空配列を返します。
また、n が自身の要素数より少ない場合はその要素数の配列を
返します。どちらの場合も自身は空配列となります。

返す値と副作用の両方を利用して、個数を指定して配列を 2 分する簡単な方法として使えます。

@param n 自身から取り除きたい要素の個数を非負整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
...

Array#unshift(*obj) -> self (19.0)

指定された obj を引数の最後から順番に配列の先頭に挿入します。 引数を指定しなければ何もしません。

指定された obj を引数の最後から順番に配列の先頭に挿入します。
引数を指定しなければ何もしません。

@param obj 自身に追加したいオブジェクトを指定します。

//emlist[例][ruby]{
arr = [1,2,3]
arr.unshift 0
p arr #=> [0, 1, 2, 3]
arr.unshift [0]
p arr #=> [[0], 0, 1, 2, 3]
arr.unshift 1, 2
p arr #=> [1, 2, [0], 0, 1, 2, 3]
//}

@see A...

IRB::ExtendCommandBundle.install_extend_commands -> object (19.0)

定義済みの拡張を読み込みます。

定義済みの拡張を読み込みます。

irb で以下のメソッドが利用できるようになります。(それぞれ 1 つだけ抜粋)

* irb_current_working_workspace
* irb_change_workspace
* irb_workspaces
* irb_push_workspace
* irb_pop_workspace
* irb_load
* irb_require
* irb_source
* irb
* irb_jobs
* irb_fg
* irb_kill
* irb_help

irb/extend-command が requir...

絞り込み条件を変える

Kernel#DelegateClass(superclass) -> object (19.0)

クラス superclass のインスタンスへメソッドを委譲するクラスを定義し、 そのクラスを返します。

クラス superclass のインスタンスへメソッドを委譲するクラスを定義し、
そのクラスを返します。

@param superclass 委譲先となるクラス

例:

//emlist{
require 'delegate'

class ExtArray < DelegateClass(Array)
def initialize
super([])
end
end
a = ExtArray.new
p a.class # => ExtArray
a.push 25
p a # => [25]
//}

Kernel#enable_config(config, default) -> bool | String (19.0)

configure のオプションを検査します。

configure のオプションを検査します。

configure のオプションに --enable-<config> が指定された場合は、真を返し
ます。--disable-<config> が指定された場合は。偽を返します。どちらでもな
い場合は default を返します。

これはデバッグ情報などのカスタム定義を、追加するのに役立ちます。

@param config configure のオプションの名前を指定します。

@param default デフォルト値を返します。


require 'mkmf'
if enable_config("debug")
...

Kernel#enable_config(config, default) {|config, default| ... } -> bool | String (19.0)

configure のオプションを検査します。

configure のオプションを検査します。

configure のオプションに --enable-<config> が指定された場合は、真を返し
ます。--disable-<config> が指定された場合は。偽を返します。どちらでもな
い場合は default を返します。

これはデバッグ情報などのカスタム定義を、追加するのに役立ちます。

@param config configure のオプションの名前を指定します。

@param default デフォルト値を返します。


require 'mkmf'
if enable_config("debug")
...

Kernel#with_config(config, default = nil) -> bool | String (19.0)

configure のオプションを検査します。

configure のオプションを検査します。

configure のオプションに --with-<config> が指定された場合は真を返しま
す。--without-<config> が指定された場合は偽を返します。どちらでもない場
合は default を返します。

これはデバッグ情報などのカスタム定義を、追加するのに役立ちます。

@param config configure のオプションの名前を指定します。

@param default デフォルト値を返します。


require 'mkmf'
if with_config("debug")
$defs...

Kernel#with_config(config, default = nil) {|config, default| ... } -> bool | String (19.0)

configure のオプションを検査します。

configure のオプションを検査します。

configure のオプションに --with-<config> が指定された場合は真を返しま
す。--without-<config> が指定された場合は偽を返します。どちらでもない場
合は default を返します。

これはデバッグ情報などのカスタム定義を、追加するのに役立ちます。

@param config configure のオプションの名前を指定します。

@param default デフォルト値を返します。


require 'mkmf'
if with_config("debug")
$defs...

絞り込み条件を変える

Marshal フォーマット (19.0)

Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。

Marshal フォーマット
フォーマットバージョン 4.8 を元に記述しています。

=== nil, true, false

それぞれ、'0', 'T', 'F' になります。

//emlist[][ruby]{
p Marshal.dump(nil).unpack1("x2 a*") # => "0"
p Marshal.dump(true).unpack1("x2 a*") # => "T"
p Marshal.dump(false).unpack1("x2 a*") # => "F"
//}

Ruby 2.1 以前では、インスタンス変数を設定しても dump されません...

Monitor (19.0)

スレッドの同期機構としてのモニター機能を提供するクラスです。 また同じスレッドから何度も lock できる Mutex としての機能も提供します。

スレッドの同期機構としてのモニター機能を提供するクラスです。
また同じスレッドから何度も lock できる Mutex としての機能も提供します。

MonitorMixin を include し、いくつかの別名を定義したクラスです。

=== 例

//emlist[消費者、生産者問題の例][ruby]{
require 'monitor'

buf = []
mon = Monitor.new
empty_cond = mon.new_cond

# consumer
Thread.start do
loop do
mon.synchronize do
empty...

MonitorMixin (19.0)

スレッドの同期機構としてのモニター機能を提供するモジュールです。

スレッドの同期機構としてのモニター機能を提供するモジュールです。

クラスに Module#include したり、オブジェクトに
Object#extend したりすることでそのクラス/オブジェクトに
モニタ機能を追加します。

=== 例

//emlist[消費者、生産者問題の例][ruby]{
require 'monitor'

buf = []
buf.extend(MonitorMixin) # 配列にモニタ機能を追加
empty_cond = buf.new_cond # 配列が空であるかないかを通知する条件変数

# consumer
Thread.start do
lo...

Readline::HISTORY.<<(string) -> self (19.0)

ヒストリの最後に string で指定した文字列を追加します。 self を返します。

ヒストリの最後に string で指定した文字列を追加します。
self を返します。

@param string 文字列を指定します。

例: "foo"を追加する。

require "readline"

Readline::HISTORY << "foo"
p Readline::HISTORY[-1] #=> "foo"

例: "foo"、"bar"を追加する。

require "readline"

Readline::HISTORY << "foo" << "bar"
p Readline::HISTORY[-1] #=> "bar"
p Re...

Readline::HISTORY.delete_at(index) -> String | nil (19.0)

index で指定したインデックスの内容をヒストリから削除し、その内容を返します。 該当する index の内容がヒストリになければ、 nil を返します。 index に 0 を指定すると Readline::HISTORY.shift と同様に最初の入力内容を削除します。 また、 -1 は最後の入力内容というように、index に負の値を指定することで、 最後から入力内容を取得することもできます。 index が -1 の場合は Readline::HISTORY.pop と同様に動作します。

index で指定したインデックスの内容をヒストリから削除し、その内容を返します。
該当する index の内容がヒストリになければ、 nil を返します。
index に 0 を指定すると Readline::HISTORY.shift
と同様に最初の入力内容を削除します。
また、 -1 は最後の入力内容というように、index に負の値を指定することで、
最後から入力内容を取得することもできます。
index が -1 の場合は Readline::HISTORY.pop と同様に動作します。

@param index 削除対象のヒストリのインデックスを指定します。

@raise N...

絞り込み条件を変える

Readline::HISTORY.empty? -> bool (19.0)

ヒストリに格納された内容の数が 0 の場合は true を、 そうでない場合は false を返します。

ヒストリに格納された内容の数が 0 の場合は true を、
そうでない場合は false を返します。

例:

require "readline"

p Readline::HISTORY.empty? #=> true
Readline::HISTORY.push("foo", "bar", "baz")
p Readline::HISTORY.empty? #=> false

@see Readline::HISTORY.length

Readline::HISTORY.length -> Integer (19.0)

ヒストリに格納された内容の数を取得します。

ヒストリに格納された内容の数を取得します。

例: ヒストリの内容を最初から順番に出力する。

require "readline"

Readline::HISTORY.push("foo", "bar", "baz")
p Readline::HISTORY.length #=> 3

@see Readline::HISTORY.empty?

Readline::HISTORY.size -> Integer (19.0)

ヒストリに格納された内容の数を取得します。

ヒストリに格納された内容の数を取得します。

例: ヒストリの内容を最初から順番に出力する。

require "readline"

Readline::HISTORY.push("foo", "bar", "baz")
p Readline::HISTORY.length #=> 3

@see Readline::HISTORY.empty?

TCPServer (19.0)

TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。

TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。

このクラスによって簡単にソケットを利用したサーバのプログラミングができます。

例えば echo サーバは以下のようになります。

require "socket"

gs = TCPServer.open(0)
socks = [gs]
addr = gs.addr
addr.shift
printf("server is on %s\n", addr.join(":"))

while true
nsock = select(socks)
next if nsock ==...

Thread::Queue (19.0)

Queue はスレッド間の FIFO(first in first out) の通信路です。ス レッドが空のキューを読み出そうとすると停止します。キューになんら かの情報が書き込まれると実行は再開されます。

Queue はスレッド間の FIFO(first in first out) の通信路です。ス
レッドが空のキューを読み出そうとすると停止します。キューになんら
かの情報が書き込まれると実行は再開されます。

最大サイズが指定できる Queue のサブクラス Thread::SizedQueue も提供されています。

=== 例

require 'thread'

q = Queue.new

th1 = Thread.start do
while resource = q.pop
puts resource
end
end

[:resou...

絞り込み条件を変える

Thread::Queue#clear -> () (19.0)

キューを空にします。返り値は不定です。

キューを空にします。返り値は不定です。

//emlist[例][ruby]{
q = Queue.new

[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }

q.length # => 4
q.clear
q.length # => 0
//}

Thread::Queue#close -> self (19.0)

キューを close します。close 済みのキューを再度 open することはできません。

キューを close します。close 済みのキューを再度 open することはできません。

close 後は以下のように動作します。

* Thread::Queue#closed? は true を返します
* Thread::Queue#close は無視されます
* Thread::Queue#enq/push/<< は ClosedQueueError を発生します
* Thread::Queue#empty? が false を返す場合は Thread::Queue#deq/pop/shift は通常通りオブジェクトを返します

また、ClosedQueueError...

Thread::Queue#closed? -> bool (19.0)

キューが close されている時に true を返します。

キューが close されている時に true を返します。

//emlist[例][ruby]{
q = Queue.new

[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }

q.closed? # => false
q.close
q.closed? # => true
//}

Thread::Queue#empty? -> bool (19.0)

キューが空の時、真を返します。

キューが空の時、真を返します。

//emlist[例][ruby]{
q = Queue.new
q.empty? # => true
q.push(:resource)
q.empty? # => false
//}

Thread::Queue#length -> Integer (19.0)

キューの長さを返します。

キューの長さを返します。

//emlist[例][ruby]{
q = Queue.new

[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }

q.length # => 4
//}

絞り込み条件を変える

Thread::Queue#size -> Integer (19.0)

キューの長さを返します。

キューの長さを返します。

//emlist[例][ruby]{
q = Queue.new

[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }

q.length # => 4
//}

Thread::SizedQueue#close -> self (19.0)

キューを close します。詳しくは Thread::Queue#close を参照してください。

キューを close します。詳しくは Thread::Queue#close を参照してください。

Thread::Queue とはキューにオブジェクトを追加するスレッドの動作が
異なります。キューにオブジェクトを追加するスレッドを待機している場合は
ClosedQueueError が発生して中断されます。

//emlist[例][ruby]{
q = SizedQueue.new(4)

[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }

q.closed? # => false
q.close
q.c...

Psych::Visitors::YAMLTree#<<(object) (4.0)

変換対象の Ruby オブジェクトを追加します。

変換対象の Ruby オブジェクトを追加します。

@param object YAML AST へ変換する Ruby オブジェクト

REXML::Parent#<<(object) -> () (4.0)

object を子ノード列の最後に追加します。

object を子ノード列の最後に追加します。

object の親ノードには self が設定されます。

@param object 追加するノード

REXML::Parent#add(object) -> () (4.0)

object を子ノード列の最後に追加します。

object を子ノード列の最後に追加します。

object の親ノードには self が設定されます。

@param object 追加するノード

絞り込み条件を変える

Thread::Queue#<<(value) -> () (4.0)

キューの値を追加します。待っているスレッドがいれば実行を再開 させます。返り値は不定です。

キューの値を追加します。待っているスレッドがいれば実行を再開
させます。返り値は不定です。

Thread::Queue#enq(value) -> () (4.0)

キューの値を追加します。待っているスレッドがいれば実行を再開 させます。返り値は不定です。

キューの値を追加します。待っているスレッドがいれば実行を再開
させます。返り値は不定です。