るりまサーチ (Ruby 2.1.0)

最速Rubyリファレンスマニュアル検索!
78件ヒット [1-78件を表示] (0.034秒)
トップページ > バージョン:2.1.0[x] > クエリ:Proc[x] > クエリ:call[x]

別のキーワード

  1. _builtin to_proc
  2. _builtin proc
  3. proc curry
  4. httpserver mount_proc
  5. readline completion_proc

モジュール

検索結果

Proc (114811.0)

ブロックをコンテキスト(ローカル変数のスコープやスタックフ レーム)とともにオブジェクト化した手続きオブジェクトです。

ブロックをコンテキスト(ローカル変数のスコープやスタックフ
レーム)とともにオブジェクト化した手続きオブジェクトです。

Proc は ローカル変数のスコープを導入しないことを除いて
名前のない関数のように使えます。ダイナミックローカル変数は
Proc ローカルの変数として使えます。

Proc がローカル変数のスコープを保持していることは以下の例で
変数 var を参照できていることからわかります。

//emlist[例][ruby]{
var = 1
$foo = Proc.new { var }
var = 2

def foo
$foo.call
end

p foo ...

Proc#call(*arg) -> () (108340.0)

手続きオブジェクトを実行してその結果を返します。

手続きオブジェクトを実行してその結果を返します。

引数の渡され方はオブジェクトの生成方法によって異なります。
詳しくは Proc#lambda? を参照してください。

「===」は when の所に手続きを渡せるようにするためのものです。

//emlist[例][ruby]{
def sign(n)
case n
when lambda{|n| n > 0} then 1
when lambda{|n| n < 0} then -1
else 0
end
end

p sign(-4) #=> -1
p sign(0) #=> 0
p sign(7) #=> 1...

Proc#lambda? -> bool (63523.0)

手続きオブジェクトの引数の取扱が厳密であるならば true を返します。

手続きオブジェクトの引数の取扱が厳密であるならば true を返します。


引数の取扱の厳密さの意味は以下の例を参考にしてください。

//emlist[例][ruby]{
# lambda で生成した Proc オブジェクトでは true
lambda{}.lambda? # => true
# proc で生成した Proc オブジェクトでは false
proc{}.lambda? # => false
# Proc.new で生成した Proc オブジェクトでは false
Proc.new{}.lambda? # => false

# 以下、lambda?が偽である場合
#...

Proc.new -> Proc (63487.0)

ブロックをコンテキストとともにオブジェクト化して返します。

ブロックをコンテキストとともにオブジェクト化して返します。

ブロックを指定しない場合、Ruby 2.7 では
$VERBOSE = true のときには警告メッセージ
「warning: Capturing the given block using Proc.new is deprecated; use `&block` instead」
が出力され、Ruby 3.0 では
ArgumentError (tried to create Proc object without a block)
が発生します。

ブロックを指定しなければ、このメソッドを呼び出したメソッドが
ブロックを伴うと...

Proc.new { ... } -> Proc (63487.0)

ブロックをコンテキストとともにオブジェクト化して返します。

ブロックをコンテキストとともにオブジェクト化して返します。

ブロックを指定しない場合、Ruby 2.7 では
$VERBOSE = true のときには警告メッセージ
「warning: Capturing the given block using Proc.new is deprecated; use `&block` instead」
が出力され、Ruby 3.0 では
ArgumentError (tried to create Proc object without a block)
が発生します。

ブロックを指定しなければ、このメソッドを呼び出したメソッドが
ブロックを伴うと...

絞り込み条件を変える

Proc#===(*arg) -> () (63040.0)

手続きオブジェクトを実行してその結果を返します。

手続きオブジェクトを実行してその結果を返します。

引数の渡され方はオブジェクトの生成方法によって異なります。
詳しくは Proc#lambda? を参照してください。

「===」は when の所に手続きを渡せるようにするためのものです。

//emlist[例][ruby]{
def sign(n)
case n
when lambda{|n| n > 0} then 1
when lambda{|n| n < 0} then -1
else 0
end
end

p sign(-4) #=> -1
p sign(0) #=> 0
p sign(7) #=> 1...

Proc#[](*arg) -> () (63040.0)

手続きオブジェクトを実行してその結果を返します。

手続きオブジェクトを実行してその結果を返します。

引数の渡され方はオブジェクトの生成方法によって異なります。
詳しくは Proc#lambda? を参照してください。

「===」は when の所に手続きを渡せるようにするためのものです。

//emlist[例][ruby]{
def sign(n)
case n
when lambda{|n| n > 0} then 1
when lambda{|n| n < 0} then -1
else 0
end
end

p sign(-4) #=> -1
p sign(0) #=> 0
p sign(7) #=> 1...

Proc#yield(*arg) -> () (63040.0)

手続きオブジェクトを実行してその結果を返します。

手続きオブジェクトを実行してその結果を返します。

引数の渡され方はオブジェクトの生成方法によって異なります。
詳しくは Proc#lambda? を参照してください。

「===」は when の所に手続きを渡せるようにするためのものです。

//emlist[例][ruby]{
def sign(n)
case n
when lambda{|n| n > 0} then 1
when lambda{|n| n < 0} then -1
else 0
end
end

p sign(-4) #=> -1
p sign(0) #=> 0
p sign(7) #=> 1...

static VALUE proc_call(VALUE proc, VALUE args) (36901.0)

static void call_end_proc(VALUE data) (36649.0)

評価器プロセスが終了するとき、 END 文で登録された Proc オブジェクト data を起動します。

評価器プロセスが終了するとき、
END 文で登録された Proc オブジェクト data を起動します。

絞り込み条件を変える

static VALUE proc_invoke(VALUE proc, VALUE args, int pcall, VALUE self) (18997.0)

Proc オブジェクト proc を起動します。そのとき 引数を args とし、self を self にします。

Proc オブジェクト proc を起動します。そのとき
引数を args とし、self を self にします。

Readline.completion_proc=(proc) (18973.0)

ユーザからの入力を補完する時の候補を取得する Proc オブジェクト proc を指定します。 proc は、次のものを想定しています。 (1) callメソッドを持つ。callメソッドを持たない場合、例外 ArgumentError を発生します。 (2) 引数にユーザからの入力文字列を取る。 (3) 候補の文字列の配列を返す。

ユーザからの入力を補完する時の候補を取得する Proc オブジェクト
proc を指定します。
proc は、次のものを想定しています。
(1) callメソッドを持つ。callメソッドを持たない場合、例外 ArgumentError を発生します。
(2) 引数にユーザからの入力文字列を取る。
(3) 候補の文字列の配列を返す。

「/var/lib /v」の後で補完を行うと、
デフォルトでは proc の引数に「/v」が渡されます。
このように、ユーザが入力した文字列を
Readline.completer_word_break_characters に含まれる文字で区切った...

Symbol#to_proc -> Proc (18817.0)

self に対応する Proc オブジェクトを返します。

self に対応する Proc オブジェクトを返します。

生成される Proc オブジェクトを呼びだす(Proc#call)と、
Proc#callの第一引数をレシーバとして、 self という名前のメソッドを
残りの引数を渡して呼びだします。


//emlist[明示的に呼ぶ例][ruby]{
:to_i.to_proc["ff", 16] # => 255 ← "ff".to_i(16)と同じ
//}

//emlist[暗黙に呼ばれる例][ruby]{
# メソッドに & とともにシンボルを渡すと
# to_proc が呼ばれて Proc 化され、
# それがブロックとして渡される...

WEBrick::HTTPServer#mount_proc(dir, proc) -> () (18796.0)

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

@param dir ディレクトリをあらわす文字列を指定します。

@param proc リクエストを処理する Proc オブジェクトを指定します。
WEBrick::HTTPResponse オブジェクトと WEBrick::HTTPRequest
オブジェクトを引数として proc.call(request, response) の引数の順で呼び出されます。

@raise WEBrick::HTTPServerError pr...

Method#to_proc -> Proc (18757.0)

self を call する Proc オブジェクトを生成して返します。

self を call する Proc オブジェクトを生成して返します。

//emlist[例][ruby]{
class Foo
def foo
"foo"
end
end

m = Foo.new.method(:foo) # => #<Method: Foo#foo>
pr = m.to_proc # => #<Proc:0x007f874d026008 (lambda)>
pr.call # => "foo"
//}

絞り込み条件を変える

Hash#default_proc -> Proc | nil (18727.0)

ハッシュのデフォルト値を返す Proc オブジェクトを返します。 ハッシュがブロック形式のデフォルト値を持たない場合 nil を返します。

ハッシュのデフォルト値を返す Proc オブジェクトを返します。
ハッシュがブロック形式のデフォルト値を持たない場合 nil を返します。

//emlist[例][ruby]{
h = Hash.new {|hash, key| "The #{key} not exist in #{hash.inspect}"}
p h.default #=> nil
p block = h.default_proc #=> #<Proc:0x0x401a9ff4>
p block.call({},:foo) #=> "The foo not exist in {}"

h...

OpenSSL::X509::Store#verify_callback=(proc) (18676.0)

検証をフィルタするコールバックを設定します。

検証をフィルタするコールバックを設定します。

コールバックには Proc や Method を渡します。

渡されたコールバックオブジェクトは証明書チェインの検証時に
チェインに含まれる各証明書の署名を検証するたびに呼びだされます。
そのときに渡される引数は以下のように
proc{|ok, ctx| ... }
2つで、1つめは検証が成功したかの真偽値、
2つめは検証後の状態を保存した
OpenSSL::X509::StoreContext オブジェクトです。
このコールバックには2つの役割があります。1つ目はコンテキストオブジェクト
を調べることで詳細なエラー情報を得ることです。2つ目...

OpenSSL::SSL::SSLContext#verify_callback=(proc) (18658.0)

検証をフィルタするコールバックを設定します。

検証をフィルタするコールバックを設定します。

OpenSSL::X509::Store#verify_callback= と同じ働きをします。

コールバックには Proc や Method を渡します。

渡されたコールバックオブジェクトは証明書チェインの検証時に
チェインに含まれる各証明書の署名を検証するたびに呼びだされます。
そのときに渡される引数は2つで、1つめは検証が成功したかの真偽値、
2つめは検証後の状態を保存した
OpenSSL::X509::StoreContext オブジェクトです。
このコールバックには2つの役割があります。1つ目はコンテキストオブジェクト
を調べること...

Net::HTTP#verify_callback=(proc) (18640.0)

検証をフィルタするコールバックを設定します。

検証をフィルタするコールバックを設定します。

詳しくは OpenSSL::X509::Store#verify_callback= や
OpenSSL::SSL::SSLContext#verify_callback= を見てください。

@param proc 設定する Proc オブジェクト
@see Net::HTTP#verify_callback,
OpenSSL::X509::Store#verify_callback=,
OpenSSL::SSL::SSLContext#verify_callback=

Net::HTTP#verify_callback -> Proc (18604.0)

自身に設定されている検証をフィルタするコールバックを 返します。

自身に設定されている検証をフィルタするコールバックを
返します。

デフォルトのコールバックが設定されている場合には nil を返します。

@see Net::HTTP#verify_callback=,
OpenSSL::X509::Store#verify_callback,
OpenSSL::SSL::SSLContext#verify_callback

絞り込み条件を変える

OpenSSL::SSL::SSLContext#tmp_dh_callback -> Proc | nil (18604.0)

一時的 DH 鍵を生成するためのコールバックを返します。

一時的 DH 鍵を生成するためのコールバックを返します。

@see OpenSSL::SSL::SSLContext#tmp_dh_callback=

OpenSSL::SSL::SSLContext#verify_callback -> Proc | nil (18604.0)

オブジェクトに設定されている検証をフィルタするコールバックを 返します。

オブジェクトに設定されている検証をフィルタするコールバックを
返します。

デフォルトのコールバックが設定されている場合には nil を返します。

@see OpenSSL::X509::Store#verify_callback,
OpenSSL::SSL::SSLContext#verify_callback=

OpenSSL::X509::Store#verify_callback -> Proc | nil (18604.0)

オブジェクトに設定されている検証をフィルタするコールバックを 返します。

オブジェクトに設定されている検証をフィルタするコールバックを
返します。

デフォルトのコールバックが設定されている場合には nil を返します。

@see OpenSSL::X509::Store#verify_callback=

WEBrick::HTTPServer#mount_proc(dir) {|req, res| ...} -> () (18496.0)

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

@param dir ディレクトリをあらわす文字列を指定します。

@param proc リクエストを処理する Proc オブジェクトを指定します。
WEBrick::HTTPResponse オブジェクトと WEBrick::HTTPRequest
オブジェクトを引数として proc.call(request, response) の引数の順で呼び出されます。

@raise WEBrick::HTTPServerError pr...

OpenSSL::SSL::SSLContext#tmp_dh_callback=(cb) (18337.0)

一時的 DH 鍵を生成するためのコールバックを設定します。

一時的 DH 鍵を生成するためのコールバックを設定します。

コールバックには Proc や Method を渡します。

暗号で一時的な DH 鍵を利用する場合にはこのコールバックが
呼びだされ、呼びだされたブロックは適切な鍵パラメータを返さなければ
なりません。これで設定するブロックは
proc{|sslsocket, is_export, keylen| ... }
という引数を取るようにします。それぞれの引数の意味は
* sslsocket 通信に使われる OpenSSL::SSL::SSLSocket オブジェクト
* is_export 輸出規制のある暗号を利用するかど...

絞り込み条件を変える

Kernel.#proc -> Proc (10579.0)

与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。

与えられたブロックから手続きオブジェクト (Proc のインスタンス)
を生成して返します。Proc.new に近い働きをします。

ブロックが指定されなければ、呼び出し元のメソッドで指定されたブロック
を手続きオブジェクトとして返します。呼び出し元のメソッドがブロックなし
で呼ばれると ArgumentError 例外が発生します。

ただし、ブロックを指定しない呼び出しは推奨されていません。呼び出し元のメソッドで指定されたブロック
を得たい場合は明示的に & 引数でうけるべきです。

ブロックを指定しない lambda は Ruby 2.6 までは警告メッセージ
「warning: tr...

Kernel.#proc { ... } -> Proc (10579.0)

与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。

与えられたブロックから手続きオブジェクト (Proc のインスタンス)
を生成して返します。Proc.new に近い働きをします。

ブロックが指定されなければ、呼び出し元のメソッドで指定されたブロック
を手続きオブジェクトとして返します。呼び出し元のメソッドがブロックなし
で呼ばれると ArgumentError 例外が発生します。

ただし、ブロックを指定しない呼び出しは推奨されていません。呼び出し元のメソッドで指定されたブロック
を得たい場合は明示的に & 引数でうけるべきです。

ブロックを指定しない lambda は Ruby 2.6 までは警告メッセージ
「warning: tr...

手続きオブジェクトの挙動の詳細 (9841.0)

手続きオブジェクトの挙動の詳細 * def * should_use_next * block * lambda_proc * orphan

手続きオブジェクトの挙動の詳細
* def
* should_use_next
* block
* lambda_proc
* orphan

===[a:def] 手続きオブジェクトとは

手続きオブジェクトとはブロックをコンテキスト(ローカル変数のスコープやスタックフレーム)と
ともにオブジェクトにしたものです。Proc クラスのインスタンスとして実現されています。

ブロック内では、新たなスコープが導入されるとともに、外側のローカル変数を参照できます。
Proc オブジェクトがローカル変数のスコープを保持していることは以下の例で変数 var を
参照できていることからわかりま...

WEBrick::HTTPServlet::ProcHandler.new(proc) -> WEBrick::HTTPServlet::ProcHandler (9676.0)

自身を初期化します。

自身を初期化します。

@param proc Proc オブジェクトを与えます。クライアントからのリクエストがあった時、
proc.call(request, response) のように呼び出されます。
request, response はそれぞれ WEBrick::HTTPRequest オブジェクトと
WEBrick::HTTPResponse オブジェクトです。

メソッド呼び出し(super・ブロック付き・yield) (9427.0)

メソッド呼び出し(super・ブロック付き・yield) * super * block * yield * block_arg * numbered_parameters * call_method

メソッド呼び出し(super・ブロック付き・yield)
* super
* block
* yield
* block_arg
* numbered_parameters
* call_method

//emlist[例][ruby]{
foo.bar()
foo.bar
bar()
print "hello world\n"
print
Class.new
Class::new
//}

文法:

[式 `.'] 識別子 [`(' [[`*'] 式] ... [`&' 式] `)']
[式 `::'] 識別子 [`(' ...

絞り込み条件を変える

Kernel.#lambda -> Proc (1279.0)

与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。

与えられたブロックから手続きオブジェクト (Proc のインスタンス)
を生成して返します。Proc.new に近い働きをします。

ブロックが指定されなければ、呼び出し元のメソッドで指定されたブロック
を手続きオブジェクトとして返します。呼び出し元のメソッドがブロックなし
で呼ばれると ArgumentError 例外が発生します。

ただし、ブロックを指定しない呼び出しは推奨されていません。呼び出し元のメソッドで指定されたブロック
を得たい場合は明示的に & 引数でうけるべきです。

ブロックを指定しない lambda は Ruby 2.6 までは警告メッセージ
「warning: tr...

Kernel.#lambda { ... } -> Proc (1279.0)

与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。

与えられたブロックから手続きオブジェクト (Proc のインスタンス)
を生成して返します。Proc.new に近い働きをします。

ブロックが指定されなければ、呼び出し元のメソッドで指定されたブロック
を手続きオブジェクトとして返します。呼び出し元のメソッドがブロックなし
で呼ばれると ArgumentError 例外が発生します。

ただし、ブロックを指定しない呼び出しは推奨されていません。呼び出し元のメソッドで指定されたブロック
を得たい場合は明示的に & 引数でうけるべきです。

ブロックを指定しない lambda は Ruby 2.6 までは警告メッセージ
「warning: tr...

1.6.8から1.8.0への変更点(まとめ) (1009.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への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))...

VALUE rb_iterate(VALUE (*call_proc)(), VALUE date1, VALUE (*block_proc)(), date2) (973.0)

ブロック付きメソッド(イテレータ)呼び出しを行う関数です.

ブロック付きメソッド(イテレータ)呼び出しを行う関数です.

まず call_proc(data1) を実行します。そしてその関数か
その直下のメソッドで yield が発生すると以下が実行されます。

block_proc(VALUE block_arg, VALUE data2, VALUE self)

block_arg はブロック引数(複数なら配列に入っている)、
data2 は rb_iterate() に渡したもの、
self は block_proc 呼び出し時点での self です。

Kernel.#set_trace_func(proc) -> Proc (955.0)

Ruby インタプリタのイベントをトレースする Proc オブジェクトとして 指定された proc を登録します。 nil を指定するとトレースがオフになります。

Ruby インタプリタのイベントをトレースする Proc オブジェクトとして
指定された proc を登録します。 nil を指定するとトレースがオフになります。

Ruby インタプリタがプログラムを実行する過程で、メソッドの呼び出しや
式の評価などのイベントが発生する度に、以下で説明する6個の引数とともに
登録された Proc オブジェクトを実行します。

標準添付の debug、tracer、
profile はこの組み込み関数を利用して実現されています。

=== ブロックパラメータの意味

渡す Proc オブジェクトのパラメータは
//emlist[][ruby]{
proc{|...

絞り込み条件を変える

Tracer.add_filter(proc) (406.0)

トレース出力するかどうかを決定するフィルタを追加します。 何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。 与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば トレースは出力されます。

トレース出力するかどうかを決定するフィルタを追加します。
何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。
与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば
トレースは出力されます。



フィルタは複数追加でき、
そのうち一つでも偽を返すとトレースの出力は抑制されます。

@param proc トレース出力するかどうかを決定する手続きオブジェクトを指定します。
通常、true か falseを返す必要があります。

フィルタ手続きは引数として event, file, line, id, binding, klass の...

Thread#set_trace_func(pr) -> Proc | nil (394.0)

スレッドにトレース用ハンドラを設定します。

スレッドにトレース用ハンドラを設定します。

nil を渡すとトレースを解除します。

設定したハンドラを返します。

//emlist[例][ruby]{
th = Thread.new do
class Trace
end
2.to_s
Thread.current.set_trace_func nil
3.to_s
end
th.set_trace_func lambda {|*arg| p arg }
th.join

# => ["line", "example.rb", 2, nil, #<Binding:0x00007fc8de87cb08>, nil]
#...

Thread#add_trace_func(pr) -> Proc (358.0)

スレッドにトレース用ハンドラを追加します。

スレッドにトレース用ハンドラを追加します。

追加したハンドラを返します。

@param pr トレースハンドラ(Proc オブジェクト)

//emlist[例][ruby]{
th = Thread.new do
class Trace
end
43.to_s
end
th.add_trace_func lambda {|*arg| p arg }
th.join

# => ["line", "example.rb", 4, nil, #<Binding:0x00007f98e107d0d8>, nil]
# => ["c-call", "example.rb", 4, ...

static VALUE rb_yield_0(VALUE val, VALUE self, VALUE klass, int pcall) (349.0)

カレントブロックに val を渡して処理を移す。 そのさい self とクラスを self と klass に切り替える。 Proc の呼び出しのときは pcall=非ゼロ にしなければならない。

カレントブロックに val を渡して処理を移す。
そのさい self とクラスを self と klass に切り替える。
Proc の呼び出しのときは pcall=非ゼロ にしなければならない。

static void assign(VALUE self, NODE *lhs, VALUE val, int pcall) (349.0)

左辺を表す構文木 lhs に対し、右辺の値 val を代入します。 Proc オブジェクトを起動する場合は pcall を非ゼロとします。

左辺を表す構文木 lhs に対し、右辺の値 val を代入します。
Proc オブジェクトを起動する場合は pcall を非ゼロとします。

絞り込み条件を変える

クラス/メソッドの定義 (307.0)

クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined

クラス/メソッドの定義
* クラス/メソッドの定義:
* class
* singleton_class
* module
* method
* operator
* nest_method
* eval_method
* singleton_method
* class_method
* limit
* 定義に関する操作:
* alias
* undef
* defined

===[a:class] クラス定義

//emlist[例][ruby]{
class Foo < S...

ruby 1.9 feature (289.0)

ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。

ruby 1.9 feature
ruby version 1.9.0 は開発版です。
以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。
1.9.1 以降は安定版です。
バグ修正がメインになります。

記号について(特に重要なものは大文字(主観))

* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
* [parser]: 文法の変更
* [regexp]: 正規表現の機能拡張
* [marshal]: Marshal ファイルのフォーマット変更
* ...

Method (271.0)

Object#method によりオブジェクト化され たメソッドオブジェクトのクラスです。

Object#method によりオブジェクト化され
たメソッドオブジェクトのクラスです。

メソッドの実体(名前でなく)とレシーバの組を封入します。
Proc オブジェクトと違ってコンテキストを保持しません。

=== Proc との差

Method は取り出しの対象であるメソッドが
なければ作れませんが、Proc は準備なしに作れます。その点から
Proc は使い捨てに向き、Method は何度も繰り返し生成する
場合に向くと言えます。また内包するコードの大きさという点では
Proc は小規模、Method は大規模コードに向くと言えます。


既存のメソッドを Method オブジェク...

ruby 1.6 feature (235.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 がなくなっ
ていま...

WEBrick::HTTPProxyServer.new(config, default = WEBrick::Config::HTTP) -> WEBrick::HTTPProxyServer (217.0)

プロクシオブジェクトを生成して返します。

プロクシオブジェクトを生成して返します。

@param config 設定を保存したハッシュを指定します。
設定として有効なハッシュのキーとその値は WEBrick::HTTPServer.new と同じです。
それに加えて以下のキーが有効です。

: :ProxyAuthProc
プロクシ認証を行う Proc オブジェクトを指定します。この proc は
WEBrick::HTTPResponse オブジェクトと WEBrick::HTTPRequest オブジェクトを引数として
proc.call(req, res) ...

絞り込み条件を変える

Tracer.add_filter {|event, file, line, id, binding, klass| .... } (106.0)

トレース出力するかどうかを決定するフィルタを追加します。 何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。 与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば トレースは出力されます。

トレース出力するかどうかを決定するフィルタを追加します。
何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。
与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば
トレースは出力されます。



フィルタは複数追加でき、
そのうち一つでも偽を返すとトレースの出力は抑制されます。

@param proc トレース出力するかどうかを決定する手続きオブジェクトを指定します。
通常、true か falseを返す必要があります。

フィルタ手続きは引数として event, file, line, id, binding, klass の...

NEWS for Ruby 2.1.0 (91.0)

NEWS for Ruby 2.1.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。

...NEWS for Ruby 2.1.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。

それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリス...

Enumerable#detect(ifnone = nil) -> Enumerator (73.0)

要素に対してブロックを評価した値が真になった最初の要素を返します。

要素に対してブロックを評価した値が真になった最初の要素を返します。

真になる要素が見つからず、ifnone も指定されていないときは nil を返します。
真になる要素が見つからず、ifnone が指定されているときは ifnone を call した結果を返します。

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

@param ifnone call メソッドを持つオブジェクト (例えば Proc) を指定します。

//emlist[例][ruby]{
# 最初の 3 の倍数を探す
p [1, 2, 3, 4, 5].find {|i| i % 3 == 0 } ...

Enumerable#detect(ifnone = nil) {|item| ... } -> object (73.0)

要素に対してブロックを評価した値が真になった最初の要素を返します。

要素に対してブロックを評価した値が真になった最初の要素を返します。

真になる要素が見つからず、ifnone も指定されていないときは nil を返します。
真になる要素が見つからず、ifnone が指定されているときは ifnone を call した結果を返します。

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

@param ifnone call メソッドを持つオブジェクト (例えば Proc) を指定します。

//emlist[例][ruby]{
# 最初の 3 の倍数を探す
p [1, 2, 3, 4, 5].find {|i| i % 3 == 0 } ...

Enumerable#find(ifnone = nil) -> Enumerator (73.0)

要素に対してブロックを評価した値が真になった最初の要素を返します。

要素に対してブロックを評価した値が真になった最初の要素を返します。

真になる要素が見つからず、ifnone も指定されていないときは nil を返します。
真になる要素が見つからず、ifnone が指定されているときは ifnone を call した結果を返します。

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

@param ifnone call メソッドを持つオブジェクト (例えば Proc) を指定します。

//emlist[例][ruby]{
# 最初の 3 の倍数を探す
p [1, 2, 3, 4, 5].find {|i| i % 3 == 0 } ...

絞り込み条件を変える

Enumerable#find(ifnone = nil) {|item| ... } -> object (73.0)

要素に対してブロックを評価した値が真になった最初の要素を返します。

要素に対してブロックを評価した値が真になった最初の要素を返します。

真になる要素が見つからず、ifnone も指定されていないときは nil を返します。
真になる要素が見つからず、ifnone が指定されているときは ifnone を call した結果を返します。

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

@param ifnone call メソッドを持つオブジェクト (例えば Proc) を指定します。

//emlist[例][ruby]{
# 最初の 3 の倍数を探す
p [1, 2, 3, 4, 5].find {|i| i % 3 == 0 } ...

MiniTest::Assertions#assert(test, message = nil) -> true (73.0)

与えられた式の評価結果が真である場合、検査にパスしたことになります。

与えられた式の評価結果が真である場合、検査にパスしたことになります。

@param test 真偽値を返す式を指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられた式が偽である場合に発生します。

MiniTest::Assertions#assert_block(message = nil) { ... } -> true (73.0)

与えられたブロックの評価結果が真である場合、検査にパスしたことになります。

与えられたブロックの評価結果が真である場合、検査にパスしたことになります。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられたブロックの評価結果が偽である場合に発生します。

MiniTest::Assertions#assert_empty(object, message = nil) -> true (73.0)

与えられたオブジェクトが空である場合、検査にパスしたことになります。

与えられたオブジェクトが空である場合、検査にパスしたことになります。

@param object 任意のオブジェクトを指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられたオブジェクトが empty? メソッドを持たない場合に発生します。
また、与えられたオブジェク...

MiniTest::Assertions#assert_equal(expected, actual, message = nil) -> true (73.0)

与えられた期待値と実際の値が等しい場合、検査にパスしたことになります。

与えられた期待値と実際の値が等しい場合、検査にパスしたことになります。

@param expected 期待値を指定します。

@param actual 実際の値を指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられた期待値と実際の値が等しくない場合に発生します。

@see Object#==

絞り込み条件を変える

MiniTest::Assertions#assert_in_delta(expected, actual, delta = 0.001, message = nil) -> true (73.0)

期待値と実際の値の差の絶対値が与えられた絶対誤差以下である場合、検査にパスしたことになります。

期待値と実際の値の差の絶対値が与えられた絶対誤差以下である場合、検査にパスしたことになります。

@param expected 期待値を指定します。

@param actual 実際の値を指定します。

@param delta 許容する絶対誤差を指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられた期待値と実際の値...

MiniTest::Assertions#assert_in_epsilon(actual, expected, epsilon = 0.001, message = nil) -> true (73.0)

与えられた期待値と実際の値の相対誤差が許容範囲内である場合、検査にパスしたことになります。

与えられた期待値と実際の値の相対誤差が許容範囲内である場合、検査にパスしたことになります。

言い換えると以下の式が真である場合、検査をパスします。

[expected, actual].min * epsilon >= (extected - actual).abs

@param expected 期待値を指定します。

@param actual 実際の値を指定します。

@param epsilon 許容する相対誤差を指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。...

MiniTest::Assertions#assert_includes(collection, object, message = nil) -> true (73.0)

与えられたコレクションにオブジェクトが含まれている場合、検査にパスしたことになります。

与えられたコレクションにオブジェクトが含まれている場合、検査にパスしたことになります。

@param collection 任意のコレクションを指定します。

@param object 任意のオブジェクトを指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 第一引数のオブジェクトが include? メソッドを持たない場合に...

MiniTest::Assertions#assert_instance_of(klass, object, message = nil) -> true (73.0)

与えられたオブジェクトが与えられたクラスの直接のインスタンスである場合、検査にパスしたことになります。

与えられたオブジェクトが与えられたクラスの直接のインスタンスである場合、検査にパスしたことになります。

@param klass オブジェクトが直接のインタンスであることを期待するクラスを指定します。

@param object 任意のオブジェクトを指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられたオブジェクトが...

MiniTest::Assertions#assert_kind_of(klass, object, message) -> true (73.0)

与えられたオブジェクトが与えられたクラスまたはそのサブクラスのインスタンス である場合、検査にパスしたことになります。

与えられたオブジェクトが与えられたクラスまたはそのサブクラスのインスタンス
である場合、検査にパスしたことになります。

@param klass オブジェクトが所属することを期待するクラスを指定します。

@param object 任意のオブジェクトを指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられたオブジェクト...

絞り込み条件を変える

MiniTest::Assertions#assert_match(regexp, str, message = nil) -> true (73.0)

与えられた文字列が与えられた正規表現にマッチした場合、検査にパスしたことになります。

与えられた文字列が与えられた正規表現にマッチした場合、検査にパスしたことになります。

@param regexp 正規表現か文字列を指定します。文字列を指定した場合は文字列そのものにマッチする
正規表現に変換してから使用します。

@param str 検査対象の文字列を指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest...

MiniTest::Assertions#assert_nil(object, message = nil) -> true (73.0)

与えられたオブジェクトが nil である場合、検査にパスしたことになります。

与えられたオブジェクトが nil である場合、検査にパスしたことになります。

@param object 任意のオブジェクトを指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられたオブジェクトが nil でない場合に発生します。

MiniTest::Assertions#assert_operator(operand1, operator, operand2, message = nil) -> true (73.0)

与えられたオブジェクトから作成する式を評価した結果が真を返す場合、検査にパスしたことになります。

与えられたオブジェクトから作成する式を評価した結果が真を返す場合、検査にパスしたことになります。

@param operand1 任意のオブジェクトを指定します。

@param operator 真偽値を返すメソッドを指定します。

@param operand2 任意のオブジェクトを指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Asse...

MiniTest::Assertions#assert_respond_to(object, method_name, message = nil) -> true (73.0)

与えられたオブジェクトが与えられたメソッドを持つ場合、検査にパスしたことになります。

与えられたオブジェクトが与えられたメソッドを持つ場合、検査にパスしたことになります。

@param object 任意のオブジェクトを指定します。

@param method_name メソッド名を指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられたオブジェクトが与えられたメソッドを持たない場合に発生します。

@...

MiniTest::Assertions#assert_same(expected, actual, message = nil) -> true (73.0)

与えられた二つのオブジェクトの Object#object_id が同じ場合、検査にパスしたことになります。

与えられた二つのオブジェクトの Object#object_id が同じ場合、検査にパスしたことになります。

@param expected 任意のオブジェクトを指定します。

@param actual 任意のオブジェクトを指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられた二つのオブジェクトが異なる場合に発生しま...

絞り込み条件を変える

MiniTest::Assertions#assert_send(array, message = nil) -> true (73.0)

引数から、式を取り出して評価した結果が真の場合、検査にパスしたことになります。

引数から、式を取り出して評価した結果が真の場合、検査にパスしたことになります。

@param array 第一要素にレシーバとなる任意のオブジェクト、第二要素にメソッド名、
第三要素にパラメータをそれぞれ指定した配列を指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 取り出した式が偽を返す場合に発生...

MiniTest::Assertions#assert_throws(tag, message = nil) { ... } -> true (73.0)

与えられたブロックを評価中に、与えられたタグが Kernel.#throw された場合、検査にパスしたことになります。

与えられたブロックを評価中に、与えられたタグが Kernel.#throw された場合、検査にパスしたことになります。

@param tag 与えられたブロック評価中に Kernel.#throw されるタグを任意のオブジェクトとして指定します。

@param message 検査に失敗した場合に表示するメッセージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられたタグが Kernel.#thro...

Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (73.0)

Rubyで使われる記号の意味(正規表現の複雑な記号は除く) ex q num per and or  plus minus ast slash hat sq  period comma langl rangl eq tilde  dollar at under lbrarbra  lbra2rbra2 lbra3rbra3 dq colon ac  backslash semicolon

Rubyで使われる記号の意味(正規表現の複雑な記号は除く)
ex q num per and or 
plus minus ast slash hat sq 
period comma langl rangl eq tilde 
dollar at under lbrarbra 
lbra2rbra2 lbra3rbra3 dq colon ac 
backslash semicolon

===[a:ex] !

: !true

not 演算子。d:spec/operator#notを参照。

: 3 != 5

「等しくない」比較演算子。d:spec/operator#notを参...

LocalJumpError#exit_value -> object (55.0)

例外 LocalJumpError を発生する原因となった break や return に渡した値を返します。

例外 LocalJumpError を発生する原因となった
break や return に渡した値を返します。

例:

def foo
proc { return 10 }
end

begin
foo.call
rescue LocalJumpError => err
p err # => #<LocalJumpError: return from block-closure>
p err.reason # => :return
p err.exit_value # => 10
e...

LocalJumpError#reason -> Symbol (55.0)

例外を発生させた原因をシンボルで返します。

例外を発生させた原因をシンボルで返します。

返す値は以下のいずれかです。

* :break
* :redo
* :retry
* :next
* :return
* :noreason

例:

def foo
proc { return 10 }
end

begin
foo.call
rescue LocalJumpError => err
p err # => #<LocalJumpError: return from block-closure>
p err.reason ...

絞り込み条件を変える

Logger#formatter -> String (55.0)

ログを出力する際に使用するフォーマッターを取得します。

ログを出力する際に使用するフォーマッターを取得します。

このメソッドの返り値が持つ call メソッドは 4 つの引数 (severity, time, program name, message) を受けとります。

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

logger = Logger.new(STDOUT)
logger.formatter # => nil
logger.info("test")
# => I, [2019-05-09T22:13:56.509159 #13912] INFO -- : test

ltsv_formatter =...

Logger#formatter=(formatter) (55.0)

ログを出力する際に使用するフォーマッターをセットします。

ログを出力する際に使用するフォーマッターをセットします。

@param formatter 4 つの引数 (severity, time, program name, message) を受け取る call メソッドを
持つオブジェクトを指定します。call メソッドの返り値は文字列にしてください。

//emlist[][ruby]{
require 'logger'
logger = Logger.new
logger.formatter = proc{|severity, datetime, progname, message|
"#{datet...

セキュリティモデル (55.0)

セキュリティモデル RubyにはCGI等のプログラミングを安全に行うことを助ける為に、セキュリティ 機構が備わっています。

セキュリティモデル
RubyにはCGI等のプログラミングを安全に行うことを助ける為に、セキュリティ
機構が備わっています。

Rubyのセキュリティモデルは「オブジェクトの汚染」と「セーフレベル」という
仕組みによってなりたっています。

=== オブジェクトの汚染

Rubyではオブジェクトは「汚染されている」とみなされることがあります。この
しくみは大きく分けて二つの使われ方をします。

ひとつ目は、信用できない入力をもとに作られたオブジェクトを「汚染されてい
る」とみなし、「危険な操作」の引数として使えないようにすることです。悪意
あるデータによって、プログラムが意図しない動作をする事...

OpenSSL::SSL::SSLContext#session_get_cb=(cb) (37.0)

セッションキャッシュを探索し、内部のキャッシュテーブルには 見付からなかった場合に呼び出されるコールバックを設定します。

セッションキャッシュを探索し、内部のキャッシュテーブルには
見付からなかった場合に呼び出されるコールバックを設定します。

コールバックオブジェクトを call するときの引数は
[ 接続オブジェクト(OpenSSL::SSL::SSLSocket), セッションID(文字列) ]
という配列です。このコールバックの返り値が
OpenSSL::SSL::Session オブジェクトならば、
それをキャッシュ値として利用します。それ以外を返したならば、
キャッシュは見つからなかったものとして取り扱われます。

セッションキャッシュについて詳しくは OpenSSL::SSL::Session ...

OpenSSL::SSL::SSLContext#session_new_cb=(cb) (37.0)

新たなセッションが作られたときに呼び出されるコールバックを 指定します。

新たなセッションが作られたときに呼び出されるコールバックを
指定します。

コールバックオブジェクトを call するときの引数は
[ 接続オブジェクト(OpenSSL::SSL::SSLSocket), 新たなセッション(OpenSSL::SSL::Session)]
という配列です。

セッションキャッシュについて詳しくは OpenSSL::SSL::Session を
見てください。

@param cb コールバックオブジェクト(Proc もしくは Method)
@see OpenSSL::SSL::SSLContext#session_new_cb

絞り込み条件を変える

OpenSSL::SSL::SSLContext#session_remove_cb=(cb) (37.0)

セッションが内部キャッシュから破棄されたときに呼び出される コールバックを設定します。

セッションが内部キャッシュから破棄されたときに呼び出される
コールバックを設定します。

コールバックオブジェクトを call するときの引数は
[ SSLContextオブジェクト(OpenSSL::SSL::SSLContext),
破棄されるセッション(OpenSSL::SSL::Session)]
という配列です。

セッションキャッシュについて詳しくは OpenSSL::SSL::Session を
見てください。


@param cb コールバックオブジェクト(Proc もしくは Method)
@see OpenSSL::SSL::SSLContext#sessi...

WEBrick::HTTPServer.new(config = {}, default = WEBrick::Config::HTTP) -> WEBrick::HTTPServer (37.0)

HTTPServer オブジェクトを生成して返します。

HTTPServer オブジェクトを生成して返します。

@param config 設定を保存したハッシュを指定します。有効なキー(Symbol オブジェクト)と値は以下のとおりです。
: :RequestTimeout
どれだけの時間 クライアントからの入力を待つかを整数か Float で指定します。
単位は秒です。
: :HTTPVersion
使用する HTTP のバージョンです。WEBrick::HTTPVersion オブジェクトで指定します。デフォルトは 1.1 です。
: :AccessLog
アクセスログの出力先とフォーマットを [[io, format],...

オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル (37.0)

オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル * Ruby オフィシャルサイト https://www.ruby-lang.org/ja/ * 原著:まつもとゆきひろ * 最新版URL: https://www.ruby-lang.org/ja/documentation/

オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル
* Ruby オフィシャルサイト https://www.ruby-lang.org/ja/
* 原著:まつもとゆきひろ
* 最新版URL: https://www.ruby-lang.org/ja/documentation/

=== 使用上の注意

組込みクラスのリファレンスはほぼ揃っています。
標準添付ライブラリのリファレンスは一部未完成です。
それ以外のドキュメントについては、まだまだ書き直しが必要です。

=== 目次

* spec/intro
* spec/commands
* spec/rubyc...