るりまサーチ (Ruby 2.4.0)

最速Rubyリファレンスマニュアル検索!
643件ヒット [301-400件を表示] (0.162秒)
トップページ > バージョン:2.4.0[x] > 種類:モジュール関数[x]

クラス

キーワード

検索結果

<< < ... 2 3 4 5 6 ... > >>

Kernel.#readlines(rs = $/) -> [String] (4.0)

ARGFを Kernel.#gets(rs) でEOFまで読み込んで、その各行を要素としてもつ配列を返します。 行の区切りは引数 rs で指定した文字列になります。

ARGFを Kernel.#gets(rs) でEOFまで読み込んで、その各行を要素としてもつ配列を返します。
行の区切りは引数 rs で指定した文字列になります。

rs に nil を指定すると行区切りなしとみなします。
空文字列 "" を指定すると連続する改行を行の区切りとみなします
(パラグラフモード)。

@param rs 行の区切りとなる文字列です。
@raise Errno::EXXX 読み込みに失敗した場合に発生します。

//emlist[main.rb][ruby]{
ARGV << 'b.txt' << 'b.txt'
p readlines #=> ["...

Kernel.#require(feature) -> bool (4.0)

Ruby ライブラリ feature をロードします。拡張子補完を行い、 同じファイルの複数回ロードはしません。

Ruby ライブラリ feature をロードします。拡張子補完を行い、
同じファイルの複数回ロードはしません。

feature が絶対パスのときは feature からロードします。
feature が相対パスのときは組み込み変数 $:
に示されるパスを順番に探し、最初に見付かったファイルを
ロードします。このとき、$: の要素文字列の先頭文字が
`~' (チルダ) だと、環境変数 HOME の値に展開されます。
また `~USER' はそのユーザのホームディレクトリに展開されます。

Ruby ライブラリとは Ruby スクリプト (*.rb) か拡張ライブラリ
(*.so,*.o,*...

Kernel.#require_relative(relative_feature) -> bool (4.0)

現在のファイルからの相対パスで require します。

現在のファイルからの相対パスで require します。

require File.expand_path(relative_feature, File.dirname(__FILE__))
とほぼ同じです。

Kernel.#eval などで文字列を評価した場合に、そこから
require_relative を呼出すと必ず失敗します。

@param relative_feature ファイル名の文字列です。
@raise LoadError ロードに失敗した場合に発生します。
@see Kernel.#require

=== require と load のスコープ

ローカル変数...

Kernel.#select(reads, writes = [], excepts = [], timeout = nil) -> [[IO]] | nil (4.0)

IO.select と同じです。

IO.select と同じです。

@param reads IO.select 参照
@param writes IO.select 参照
@param excepts IO.select 参照
@param timeout IO.select 参照


@see IO.select

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

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

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

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

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

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

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

絞り込み条件を変える

Kernel.#sleep -> Integer (4.0)

sec 秒だけプログラムの実行を停止します。

sec 秒だけプログラムの実行を停止します。

sec が省略された場合、他スレッドからの Thread#run
などで明示的に起こさない限り永久にスリープします。Thread#runを呼ぶとその時点で
sleepの実行が中断されます。

@param sec 停止する秒数を非負の数値で指定します。浮動小数点数も指定できます。
省略された場合、永久にスリープします。

@return 実際に停止していた秒数 (整数に丸められた値) です。

//emlist[例][ruby]{
it = Thread.new do
sleep
puts 'it_end'
end...

Kernel.#sleep(sec) -> Integer (4.0)

sec 秒だけプログラムの実行を停止します。

sec 秒だけプログラムの実行を停止します。

sec が省略された場合、他スレッドからの Thread#run
などで明示的に起こさない限り永久にスリープします。Thread#runを呼ぶとその時点で
sleepの実行が中断されます。

@param sec 停止する秒数を非負の数値で指定します。浮動小数点数も指定できます。
省略された場合、永久にスリープします。

@return 実際に停止していた秒数 (整数に丸められた値) です。

//emlist[例][ruby]{
it = Thread.new do
sleep
puts 'it_end'
end...

Kernel.#spawn(command, options={}) -> Integer (4.0)

引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。

引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。


=== 引数の解釈

この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。


@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash...

Kernel.#spawn(env, command, options={}) -> Integer (4.0)

引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。

引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。


=== 引数の解釈

この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。


@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash...

Kernel.#spawn(env, program, *args, options={}) -> Integer (4.0)

引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。

引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。

env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//...

絞り込み条件を変える

Kernel.#spawn(program, *args) -> Integer (4.0)

引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。

引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。

env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//...

Kernel.#sprintf(format, *arg) -> String (4.0)

format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。

format 文字列を C 言語の sprintf と同じように解釈し、
引数をフォーマットした文字列を返します。

@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@see Kernel.#printf,Time#strftime,Date.strptime

=== sprintf フォーマット

Ruby の sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、s...

Kernel.#srand -> Integer (4.0)

Kernel.#rand や Random.rand で使用される擬似乱数生成器の種を設定し、古い種を返します。

Kernel.#rand や Random.rand で使用される擬似乱数生成器の種を設定し、古い種を返します。

seed に整数を指定するとその絶対値を乱数の種に設定します。
それ以外の値を指定した場合は seed.to_int が指定されたものとして扱います。
seed に既知の値を与えると、以前の Kernel.#rand の値を再現できます。

seed が省略された時には
現在の時刻やプロセス ID、srand を呼び出した回数、
また可能なら /dev/urandom から読み出したデータなどを元に種を作ります。

@param seed 乱数の種となる整数を指定します。
...

Kernel.#srand(seed) -> Integer (4.0)

Kernel.#rand や Random.rand で使用される擬似乱数生成器の種を設定し、古い種を返します。

Kernel.#rand や Random.rand で使用される擬似乱数生成器の種を設定し、古い種を返します。

seed に整数を指定するとその絶対値を乱数の種に設定します。
それ以外の値を指定した場合は seed.to_int が指定されたものとして扱います。
seed に既知の値を与えると、以前の Kernel.#rand の値を再現できます。

seed が省略された時には
現在の時刻やプロセス ID、srand を呼び出した回数、
また可能なら /dev/urandom から読み出したデータなどを元に種を作ります。

@param seed 乱数の種となる整数を指定します。
...

Kernel.#sub(pattern) {|matched| ... } -> String (4.0)

$_.sub とほぼ同じですが、置換が発生したときは、$_の内容を置き換える点が異なります。 コマンドラインオプションで -p または -n を指定した時のみ定義されます。

$_.sub とほぼ同じですが、置換が発生したときは、$_の内容を置き換える点が異なります。
コマンドラインオプションで -p または -n を指定した時のみ定義されます。

暗号的になりすぎるきらいがあるため、このメソッドの使用は推奨されていません。
今後はより明示的な $_.sub を使ってください。

@raise ArgumentError replace を指定しなかった場合に発生します。

$_.sub とこのメソッド sub は以下の点で違いがあります。

* sub は $_ の値をコピーして、コピーの方を更新し、
$_ に再代入します。

@param patter...

絞り込み条件を変える

Kernel.#sub(pattern, replace) -> String (4.0)

$_.sub とほぼ同じですが、置換が発生したときは、$_の内容を置き換える点が異なります。 コマンドラインオプションで -p または -n を指定した時のみ定義されます。

$_.sub とほぼ同じですが、置換が発生したときは、$_の内容を置き換える点が異なります。
コマンドラインオプションで -p または -n を指定した時のみ定義されます。

暗号的になりすぎるきらいがあるため、このメソッドの使用は推奨されていません。
今後はより明示的な $_.sub を使ってください。

@raise ArgumentError replace を指定しなかった場合に発生します。

$_.sub とこのメソッド sub は以下の点で違いがあります。

* sub は $_ の値をコピーして、コピーの方を更新し、
$_ に再代入します。

@param patter...

Kernel.#syscall(num, *arg) -> Integer (4.0)

numで指定された番号のシステムコールを実行します。 第2引数以降をシステムコールの引数として渡します。

numで指定された番号のシステムコールを実行します。
第2引数以降をシステムコールの引数として渡します。

どの数値がどのシステムコールに対応するかは、
syscall(2) や
/usr/include/sys/syscall.h を参照してください。

システムコールの慣習に従い、syscall(2)
が -1 を返す場合には例外 Errno::EXXX が発生します。
それ以外では、返した値をそのまま数値で返します。

ライブラリ fiddle を使えばより高レベルな操作ができます。

@param num システムコール番号です。
@param arg 文字列か、整数です。最大 9 ...

Kernel.#system(command, options={}) -> bool | nil (4.0)

引数を外部コマンドとして実行して、成功した時に真を返します。

引数を外部コマンドとして実行して、成功した時に真を返します。

子プロセスが終了ステータス 0 で終了すると成功とみなし true を返します。
それ以外の終了ステータスの場合は false を返します。
コマンドを実行できなかった場合は nil を返します。


終了ステータスは変数 $? で参照できます。

コマンドを実行することができなかった場合、多くのシェルはステータス
127 を返します。シェルを介さない場合は Ruby の子プロセスがステータス
127 で終了します。
コマンドが実行できなかったのか、コマンドが失敗したのかは、普通
$? を参照することで判別可能です。

=== ...

Kernel.#system(env, command, options={}) -> bool | nil (4.0)

引数を外部コマンドとして実行して、成功した時に真を返します。

引数を外部コマンドとして実行して、成功した時に真を返します。

子プロセスが終了ステータス 0 で終了すると成功とみなし true を返します。
それ以外の終了ステータスの場合は false を返します。
コマンドを実行できなかった場合は nil を返します。


終了ステータスは変数 $? で参照できます。

コマンドを実行することができなかった場合、多くのシェルはステータス
127 を返します。シェルを介さない場合は Ruby の子プロセスがステータス
127 で終了します。
コマンドが実行できなかったのか、コマンドが失敗したのかは、普通
$? を参照することで判別可能です。

=== ...

Kernel.#system(env, program, *args, options={}) -> bool | nil (4.0)

引数を外部コマンドとして実行して、成功した時に真を返します。

引数を外部コマンドとして実行して、成功した時に真を返します。

子プロセスが終了ステータス 0 で終了すると成功とみなし true を返します。
それ以外の終了ステータスの場合は false を返します。
コマンドを実行できなかった場合は nil を返します。


終了ステータスは変数 $? で参照できます。

コマンドを実行することができなかった場合、多くのシェルはステータス
127 を返します。シェルを介さない場合は Ruby の子プロセスがステータス
127 で終了します。コマンドが実行できなかったのか、コマンドが失敗したの
かは、普通 $? を参照することで判別可能です。

Hash...

絞り込み条件を変える

Kernel.#system(program, *args, options={}) -> bool | nil (4.0)

引数を外部コマンドとして実行して、成功した時に真を返します。

引数を外部コマンドとして実行して、成功した時に真を返します。

子プロセスが終了ステータス 0 で終了すると成功とみなし true を返します。
それ以外の終了ステータスの場合は false を返します。
コマンドを実行できなかった場合は nil を返します。


終了ステータスは変数 $? で参照できます。

コマンドを実行することができなかった場合、多くのシェルはステータス
127 を返します。シェルを介さない場合は Ruby の子プロセスがステータス
127 で終了します。コマンドが実行できなかったのか、コマンドが失敗したの
かは、普通 $? を参照することで判別可能です。

Hash...

Kernel.#test(cmd, file) -> bool | Time | Integer | nil (4.0)

単体のファイルでファイルテストを行います。

単体のファイルでファイルテストを行います。

@param cmd 以下に示す文字リテラル、文字列、あるいは同じ文字を表す数値
です。文字列の場合はその先頭の文字だけをコマンドとみなします。
@param file テストするファイルのパスを表す文字列か IO オブジェクトを指定します。
@return 下表に特に明記していないものは、真偽値を返します。

以下は cmd として指定できる文字リテラルとその意味です。

: ?r
ファイルを実効 uid で読むことができる
: ?w
ファイルに実効 uid で書くことができる
: ?x
ファイルを...

Kernel.#test(cmd, file1, file2) -> bool (4.0)

2ファイル間のファイルテストを行います。

2ファイル間のファイルテストを行います。

@param cmd 以下に示す文字リテラル、文字列、あるいは同じ文字を表す数値
です。文字列の場合はその先頭の文字だけをコマンドとみなします。
@param file1 テストするファイルのパスを表す文字列か IO オブジェクトを指定します。
@param file2 テストするファイルのパスを表す文字列か IO オブジェクトを指定します。
@return 真偽値を返します。

以下は cmd として指定できる文字リテラルとその意味です。

: ?=
ファイル1とファイル2の最終更新時刻が等しい
: ?>
フ...

Kernel.#throw(tag, value = nil) -> () (4.0)

Kernel.#catchとの組み合わせで大域脱出を行います。 throw は同じ tag を指定した catch のブロックの終わりまでジャンプします。

Kernel.#catchとの組み合わせで大域脱出を行います。 throw
は同じ tag を指定した catch のブロックの終わりまでジャンプします。

throw は探索時に呼び出しスタックをさかのぼるので、
ジャンプ先は同じメソッド内にあるとは限りません。
もし ensure節 が存在するならジャンプ前に実行します。

同じ tag で待っている catch が存在しない場合は、例外で
スレッドが終了します。

同じ tag であるとは Object#object_id が同じであるという意味です。

@param tag catch の引数に対応する任意のオブジェクトです。
@pa...

Kernel.#trace_var(varname) {|new_val| .... } -> nil (4.0)

グローバル変数 varname への代入のフックを登録します。

グローバル変数 varname への代入のフックを登録します。

ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。

この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。

trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。

フックを解除するには、hook に n...

絞り込み条件を変える

Kernel.#trace_var(varname, hook) -> [String|Proc] (4.0)

グローバル変数 varname への代入のフックを登録します。

グローバル変数 varname への代入のフックを登録します。

ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。

この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。

trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。

フックを解除するには、hook に n...

Kernel.#trace_var(varname, hook) -> nil (4.0)

グローバル変数 varname への代入のフックを登録します。

グローバル変数 varname への代入のフックを登録します。

ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。

この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。

trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。

フックを解除するには、hook に n...

Kernel.#trap(signal) { ... } -> String | Proc | nil (4.0)

signal で指定された割り込みにたいするハンドラとして command を登録します。Signal.#trapと同じです。

signal で指定された割り込みにたいするハンドラとして
command を登録します。Signal.#trapと同じです。

Signal.#trapの使用を推奨します。

@param signal Signal.#trap 参照
@param command Signal.#trap 参照


@see Signal.#trap,Signal

Kernel.#trap(signal, command) -> String | Proc | nil (4.0)

signal で指定された割り込みにたいするハンドラとして command を登録します。Signal.#trapと同じです。

signal で指定された割り込みにたいするハンドラとして
command を登録します。Signal.#trapと同じです。

Signal.#trapの使用を推奨します。

@param signal Signal.#trap 参照
@param command Signal.#trap 参照


@see Signal.#trap,Signal

Kernel.#untrace_var(varname, hook = nil) -> [String|Proc] (4.0)

グローバル変数 varname に関連付けられたフックを解除します。

グローバル変数 varname に関連付けられたフックを解除します。

hook が指定された場合にはそのフックだけを解除します。
省略するか nil を与えた場合は
varname のフックを全て解除します。

@param varname グローバル変数名を文字列か Symbol で指定します。
@param hook 文字列または Proc オブジェクトです。
@return 解除されたフックの配列を返します。

//emlist[例][ruby]{
trace_var(:$v){|val| print "hookA.#{val.inspect},\n" }
block = proc{...

絞り込み条件を変える

Kernel.#warn(*message) -> nil (4.0)

message を 標準エラー出力 $stderr に出力します。 $VERBOSE フラグ が nil のときは何も出力しません。

message を 標準エラー出力 $stderr に出力します。 $VERBOSE
フラグ が nil のときは何も出力しません。

文字列以外のオブジェクトが引数として与えられた場合には、
to_s メソッドにより文字列に変換してから出力します。

このメソッドは以下と同じです。

//emlist[][ruby]{
$stderr.puts(*message) if !$VERBOSE.nil? && !message.empty?
nil
//}

@param message 出力するオブジェクトを任意個指定します。
@raise IOError 標準エラー出力が書き込み用にオープ...

LUSolve.#ludecomp(a, n, zero = 0, one = 1) -> [Integer] (4.0)

n 次正方行列を表す配列 a を破壊的に変更し、返り値と併せて元の行列の LU 分解を提供します。

n 次正方行列を表す配列 a を破壊的に変更し、返り値と併せて元の行列の LU 分解を提供します。

LUSolve.#lusolve の引数を構築するために使います。

@param a 行列を BigDecimal の配列で指定します。(各要素を
Row-major order で 1 次元の配列にしたオブジェクトを指定し
ます)

@param n 引数 a の次元を整数で指定します。

@param zero 0 を表す値を指定します。

@param one 1 を表す値を指定します。

@return ピボットの位置を表す Integer の配...

LUSolve.#lusolve(a, b, ps, zero = 0.0) -> [BigDecimal] (4.0)

LU 分解を用いて、連立1次方程式 Ax = b の解 x を求めて返します。

LU 分解を用いて、連立1次方程式 Ax = b の解 x を求めて返します。

@param a 行列を BigDecimal の配列で指定します。
各要素を Row-major order で並べて 1 次元の配列にし、
LUSolve.#ludecomp で変換したものを指定します。

@param b ベクトルを BigDecimal の配列で指定します。

@param ps LUSolve.#ludecomp の返り値を指定します。

@param zero 0.0 を表す値を指定します。

//emlist[][ruby]{
require ...

Marshal.#dump(obj, limit = -1) -> String (4.0)

obj を指定された出力先に再帰的に出力します。

obj を指定された出力先に再帰的に出力します。

ファイルに書き出せないオブジェクトをファイルに書き出そうとすると
例外 TypeError が発生します。
ファイルに書き出せないオブジェクトは以下の通りです。

* 名前のついてない Class/Module オブジェクト。(この場
合は、例外 ArgumentError が発生します。無名クラスについて
は、Module.new を参照。)
* システムがオブジェクトの状態を保持するもの。具体的には以下のイン
スタンス。Dir, File::Stat, IO とそのサブクラス
File, Socket など。...

Marshal.#dump(obj, port, limit = -1) -> IO (4.0)

obj を指定された出力先に再帰的に出力します。

obj を指定された出力先に再帰的に出力します。

ファイルに書き出せないオブジェクトをファイルに書き出そうとすると
例外 TypeError が発生します。
ファイルに書き出せないオブジェクトは以下の通りです。

* 名前のついてない Class/Module オブジェクト。(この場
合は、例外 ArgumentError が発生します。無名クラスについて
は、Module.new を参照。)
* システムがオブジェクトの状態を保持するもの。具体的には以下のイン
スタンス。Dir, File::Stat, IO とそのサブクラス
File, Socket など。...

絞り込み条件を変える

Marshal.#load(port, proc = nil) -> object (4.0)

port からマーシャルデータを読み込んで、元のオブジェクトと同 じ状態をもつオブジェクトを生成します。

port からマーシャルデータを読み込んで、元のオブジェクトと同
じ状態をもつオブジェクトを生成します。

proc として手続きオブジェクトが与えられた場合には読み込んだ
オブジェクトを引数にその手続きを呼び出します。

//emlist[例][ruby]{
str = Marshal.dump(["a", 1, 10 ** 10, 1.0, :foo])
p Marshal.load(str, proc {|obj| p obj})

# => "a"
# 1
# 10000000000
# 1.0
# :foo
# ["a", 1, 10000000000...

Marshal.#restore(port, proc = nil) -> object (4.0)

port からマーシャルデータを読み込んで、元のオブジェクトと同 じ状態をもつオブジェクトを生成します。

port からマーシャルデータを読み込んで、元のオブジェクトと同
じ状態をもつオブジェクトを生成します。

proc として手続きオブジェクトが与えられた場合には読み込んだ
オブジェクトを引数にその手続きを呼び出します。

//emlist[例][ruby]{
str = Marshal.dump(["a", 1, 10 ** 10, 1.0, :foo])
p Marshal.load(str, proc {|obj| p obj})

# => "a"
# 1
# 10000000000
# 1.0
# :foo
# ["a", 1, 10000000000...

Math.#acos(x) -> Float (4.0)

x の逆余弦関数(arccosine)の値をラジアンで返します。

x の逆余弦関数(arccosine)の値をラジアンで返します。

@param x -1.0 <= x <= 1 の範囲内の実数

@return 返される値の範囲は [0, +π] です。

@raise TypeError x に数値以外を指定した場合に発生します。

@raise Math::DomainError x に範囲外の実数を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.acos(0) == Math::PI/2 # => true
//}

@see ...

Math.#acosh(x) -> Float (4.0)

x の逆双曲線余弦関数(area hyperbolic cosine)の値を返します。

x の逆双曲線余弦関数(area hyperbolic cosine)の値を返します。

=== 定義

acosh(x) = log(x + sqrt(x * x - 1)) [x >= 1]

@param x x >= 1 の範囲の実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise Math::DomainError x に範囲外の実数を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

@see Math.#cosh

Math.#asin(x) -> Float (4.0)

x の逆正弦関数(arcsine)の値をラジアンで返します。

x の逆正弦関数(arcsine)の値をラジアンで返します。

@param x -1.0 <= x <= 1 の範囲内の実数

@return 返される値の範囲は[-π/2, +π/2] です。

@raise TypeError x に数値以外を指定した場合に発生します。

@raise Math::DomainError x に範囲外の実数を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.asin(1) == Math::PI/2 # => true
//}

@se...

絞り込み条件を変える

Math.#asinh(x) -> Float (4.0)

x の逆双曲線正弦関数(area hyperbolic sine)の値を返します。

x の逆双曲線正弦関数(area hyperbolic sine)の値を返します。

=== 定義

asinh(x) = log(x + sqrt(x * x + 1))

@param x 実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

@see Math.#sinh

Math.#atan(x) -> Float (4.0)

x の逆正接関数(arctangent)の値をラジアンで返します。

x の逆正接関数(arctangent)の値をラジアンで返します。

@param x 実数

@return 返される値の範囲は [-π/2, +π/2] です。

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.atan(0) # => 0.0
//}

@see Math.#atan2, Math.#tan

Math.#atan2(y, x) -> Float (4.0)

y / x の逆正接関数(arctangent)の値をラジアンで返します。

y / x の逆正接関数(arctangent)の値をラジアンで返します。

@param y 実数
@param x 実数

@return 返される値の範囲は [-π, π] です。


//emlist[例][ruby]{
Math.atan2(1,0) #=> 1.5707963267949
Math.atan2(-1,0) #=> -1.5707963267949
//}

@raise TypeError y, x に数値以外を指定した場合に発生します。

@raise RangeError y, x に実数以外の数値を指定した場合に発生します。

@see Math.#...

Math.#atanh(x) -> Float (4.0)

x の逆双曲線正接関数(area hyperbolic tangent)の値を返します。

x の逆双曲線正接関数(area hyperbolic tangent)の値を返します。

=== 定義

atanh(x) = log((1+x)/(1-x)) / 2 [-1 < x < 1]

@param x -1 < x < 1 の実数

@return 実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise Math::DomainError x に範囲外の実数を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

@see Math.#tanh

Math.#cbrt(x) -> Float (4.0)

x の立方根(cubic root)を返します。

x の立方根(cubic root)を返します。

@param x 実数

@raise TypeError xに数値以外を指定した場合に発生します。

@raise RangeError xに実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
-9.upto(9) {|x|
p [x, Math.cbrt(x), Math.cbrt(x)**3]
}
# => [-9, -2.0800838230519, -9.0]
# [-8, -2.0, -8.0]
# [-7, -1.91293118277239, -7.0]
# [-6, -1.8...

絞り込み条件を変える

Math.#cos(x) -> Float (4.0)

x の余弦関数(cosine)の値を返します。

x の余弦関数(cosine)の値を返します。

@param x 実数(ラジアンで与えます)

@return [-1, 1] の実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.cos(Math::PI) # => -1.0
//}

@see Math.#acos

Math.#cosh(x) -> Float (4.0)

x の双曲線余弦関数(hyperbolic cosine)の値を返します。

x の双曲線余弦関数(hyperbolic cosine)の値を返します。

=== 定義

cosh(x) = (exp(x) + exp(-x)) / 2

@param x 実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

@see Math.#acosh

Math.#erf(x) -> Float (4.0)

x の誤差関数(error function)の値を返します。

x の誤差関数(error function)の値を返します。

@param x 実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.erf(0) # => 0.0
//}

@see Math.#erfc

Math.#erfc(x) -> Float (4.0)

x の相補誤差関数(complementary error function)の値を返します。

x の相補誤差関数(complementary error function)の値を返します。

@param x 実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.erfc(0) # => 1.0
//}

@see Math.#erf

Math.#exp(x) -> Float (4.0)

x の指数関数(exponential)の値を返します。

x の指数関数(exponential)の値を返します。

すなわち e の x 乗の値を返します(e は自然対数の底)。

@param x 実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.exp(0) # => 1.0
Math.exp(1) # => 2.718281828459045
Math.exp(1.5) # => 4.4816890703380645
//}

@see ...

絞り込み条件を変える

Math.#frexp(x) -> [Float, Integer] (4.0)

実数 x の仮数部と指数部の配列を返します。

実数 x の仮数部と指数部の配列を返します。

@param x 実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
fraction, exponent = Math.frexp(1234) # => [0.6025390625, 11]
fraction * 2**exponent # => 1234.0
//}

Math.#gamma(x) -> Float (4.0)

x のガンマ関数の値を返します。

x のガンマ関数の値を返します。

@param x 実数

@raise TypeError xに数値以外を指定した場合に発生します。

@raise Math::DomainError x に負の整数、もしくは -∞ を渡した場合に発生します。

@raise RangeError xに実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
def fact(n) (1..n).inject(1) {|r,i| r*i } end
1.upto(26) {|i| p [i, Math.gamma(i), fact(i-1)] }
# => [1, 1.0, 1...

Math.#hypot(x, y) -> Float (4.0)

sqrt(x*x + y*y) を返します。

sqrt(x*x + y*y) を返します。

この値は x, y を直交する 2 辺とする直角三角形の斜辺(hypotenuse)の長さです。

@param x 実数
@param y 実数

@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。

@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.hypot(3, 4) #=> 5.0
//}

Math.#ldexp(x, exp) -> Float (4.0)

実数 x に 2 の exp 乗をかけた数を返します。

実数 x に 2 の exp 乗をかけた数を返します。

@param x 実数
@param exp 整数。小数点以下切捨て。

@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。

@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
fraction, exponent = Math.frexp(1234)
Math.ldexp(fraction, exponent) # => 1234.0
//}

Math.#lgamma(x) -> [Float, Integer] (4.0)

log(|gamma(x)|) と、gamma(x) の符号を返します。

log(|gamma(x)|) と、gamma(x) の符号を返します。

符号は +1 もしくは -1 で返されます。

@param x 実数

@raise TypeError xに数値以外を指定した場合に発生します。

@raise Math::DomainError x に -∞ を渡した場合に発生します。

@raise RangeError xに実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.lgamma(0) # => [Infinity, 1]
//}

@see Math.#gamma

絞り込み条件を変える

Math.#log(x) -> Float (4.0)

x の対数(logarithm)を返します。

x の対数(logarithm)を返します。

引数 x, b の両方に 0 を指定した場合は Float::NAN を返します。

@param x 正の実数を指定します。

@param b 底を指定します。省略した場合は自然対数(natural logarithm)を計算します。

@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。

@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。

@raise DomainError 引数のどちらかに負の数を指定した場合に発生します。

//emlist[例][ru...

Math.#log(x, b) -> Float (4.0)

x の対数(logarithm)を返します。

x の対数(logarithm)を返します。

引数 x, b の両方に 0 を指定した場合は Float::NAN を返します。

@param x 正の実数を指定します。

@param b 底を指定します。省略した場合は自然対数(natural logarithm)を計算します。

@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。

@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。

@raise DomainError 引数のどちらかに負の数を指定した場合に発生します。

//emlist[例][ru...

Math.#log10(x) -> Float (4.0)

x の常用対数(common logarithm)を返します。

x の常用対数(common logarithm)を返します。

@param x 正の実数

@raise TypeError xに数値以外を指定した場合に発生します。

@raise Math::DomainError x に範囲外の実数を指定した場合に発生します。

@raise RangeError xに実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.log10(1) # => 0.0
Math.log10(10) # => 1.0
Math.log10(10**100) # => 100.0
//}

@see M...

Math.#log2(x) -> Float (4.0)

2 を底とする x の対数(binary logarithm)を返します。

2 を底とする x の対数(binary logarithm)を返します。

@param x 正の実数

@raise TypeError xに数値以外を指定した場合に発生します。

@raise Math::DomainError x に範囲外の実数を指定した場合に発生します。

@raise RangeError xに実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.log2(1) # => 0.0
Math.log2(2) # => 1.0
Math.log2(32768) # => 15.0
Math.log2(65...

Math.#rsqrt(a) -> Numeric (4.0)

@todo

@todo

複素数を考慮しないので、負の数や Complex をあたえないでください。

a が Float の時は、Float を返します。
それ以外の時、平方根が有理数であれば、Rational または Integer を返します。
無理数であれば、Float を返します。

絞り込み条件を変える

Math.#sin(x) -> Float (4.0)

x の正弦関数(sine)の値を返します。

x の正弦関数(sine)の値を返します。

@param x 実数(ラジアンで与えます)

@return [-1, 1] の実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.sin(Math::PI/2) # => 1.0
//}

@see Math.#asin

Math.#sinh(x) -> Float (4.0)

x の双曲線正弦関数(hyperbolic sine)の値を返します。

x の双曲線正弦関数(hyperbolic sine)の値を返します。

=== 定義

sinh(x) = (exp(x) - exp(-x)) / 2

@param x 実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

@see Math.#asinh

Math.#sqrt(a) -> Numeric (4.0)

@todo

@todo

a の正の平方根を返します。
a が Complex の時は、Complex を返します。
a が負の時は、a を正にして、その平方根を Complex の虚数部に入れて返します。
それ以外は、Math.rsqrt の結果を返します。

Math.#sqrt(x) -> Float (4.0)

x の非負の平方根(principal square root)を返します。

x の非負の平方根(principal square root)を返します。

@param x 0または正の実数

@raise TypeError xに数値以外を指定した場合に発生します。

@raise Math::DomainError x に範囲外の実数を指定した場合に発生します。

@raise RangeError xに実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
0.upto(10) {|x|
p [x, Math.sqrt(x), Math.sqrt(x)**2]
}
# => [0, 0.0, 0.0]
# [1, 1.0, ...

Math.#tan(x) -> Float (4.0)

x の正接関数(tangent)の値を返します。

x の正接関数(tangent)の値を返します。

@param x 実数(ラジアンで与えます)

@return 実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

//emlist[例][ruby]{
Math.tan(0) # => 0.0
//}

@see Math.#atan, Math.#atan2

絞り込み条件を変える

Math.#tanh(x) -> Float (4.0)

x の双曲線正接関数(hyperbolic tangent)の値を返します。

x の双曲線正接関数(hyperbolic tangent)の値を返します。

=== 定義

tanh(x) = sinh(x) / cosh(x)

@param x 実数

@return [-1, 1] の範囲の実数

@raise TypeError x に数値以外を指定した場合に発生します。

@raise RangeError x に実数以外の数値を指定した場合に発生します。

@see Math.#atanh

NKF.#guess(str) -> Encoding (4.0)

文字列 str の漢字コードを推測して返します。

文字列 str の漢字コードを推測して返します。

返される値は、NKF モジュールのモジュール定数です。

返される値(すなわち、推測可能なエンコーディング)は以下のいずれかです。
* NKF::JIS
* NKF::EUC
* NKF::SJIS
* NKF::UNKNOWN
* NKF::UTF8
* NKF::UTF16
* Encoding::EUCJP_MS
* Encoding::CP51932
* Encoding::WINDOWS_31J

@param str 推測対象の文字列です。

NKF.#nkf(opt, str) -> String (4.0)

文字列 str の文字コードを変換し、変換結果の文字列を返します。

文字列 str の文字コードを変換し、変換結果の文字列を返します。

opt には、nkf と同じコマンドラインオプションを指定します。
オプション文字列は NKF のオプション文字列の項を
見てください。
オプションを複数指定する場合は、NKF.nkf('-Se', str) や
NKF.nkf('-S -e', str) などとします。optは、必ず '-'
で始めなければいけないことに注意してください。

@param opt オプション文字列です。
@param str 変換対象の文字列です。

=== 注意

このメソッドは(nkf コマンドがそうであるように)、MIME Base...

Newton.#nlsolve(f, x) -> Integer (4.0)

ニュートン法を用いて非線形方程式 f(x) = 0 の解 x を求めます。

ニュートン法を用いて非線形方程式 f(x) = 0 の解 x を求めます。

@param f 関数を表すオブジェクトを指定します。詳細は
bigdecimal/newton をご覧ください。

@param x 探索を開始する点を数値の配列で指定します。解が複数ある場合、初
期値によって得られる解が異なります。また,初期値によっては収束
せずに RuntimeError が発生する場合があります。実行後は引
数 x に指定したオブジェクトに解が代入されます。
実行後は解を表す値が代入されています。

...

Newton.#norm(fv, zero = 0.0) -> Float (4.0)

ライブラリ内部で使用します。

ライブラリ内部で使用します。

絞り込み条件を変える

ObjectSpace.#_id2ref(id) -> object (4.0)

オブジェクト ID(BasicObject#__id__)からオブジェクトを得ます。

オブジェクト ID(BasicObject#__id__)からオブジェクトを得ます。

@param id 取得したいオブジェクトの ID を整数で指定します。

@raise RangeError 対応するオブジェクトが存在しなければ発生します。

//emlist[例][ruby]{
a = "hoge"
p ObjectSpace._id2ref(a.__id__) #=> "hoge"
//}

ObjectSpace.#allocation_sourcefile(object) -> String (4.0)

objectの元となったソースファイル名を返します。

objectの元となったソースファイル名を返します。

@param object 元となるソースファイル名を取得したいobjectを指定します。
@return objectの元となるソースファイル名を返します。存在しない場合はnilを返します。

//emlist[例:test.rbというファイルで下記のスクリプトを実行した場合][ruby]{
require 'objspace'

ObjectSpace::trace_object_allocations_start
obj = Object.new
puts "file:#{ObjectSpace::allocation_sourc...

ObjectSpace.#allocation_sourceline(object) -> Integer (4.0)

objectの元となったソースファイルの行番号を返します。

objectの元となったソースファイルの行番号を返します。

@param object 元となるソースファイルの行番号を取得したいobjectを指定します。
@return objectの元となるソースファイルの行番号を返します。存在しない場合はnilを返します。

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

ObjectSpace::trace_object_allocations_start
obj = Object.new
puts "line:#{ObjectSpace::allocation_sourceline(obj)}" # => lin...

ObjectSpace.#count_nodes(result_hash = nil) -> Hash (4.0)

ノードの種類ごとの数を格納したハッシュを返します。

ノードの種類ごとの数を格納したハッシュを返します。

@param result_hash 戻り値のためのハッシュを指定します。省略した場合は新
しくハッシュを作成します。result_hash の内容は上書き
されます。プローブ効果を避けるために使用します。

@raise TypeError result_hash にハッシュ以外を指定した時に発生します。

本メソッドは普通の Ruby プログラマ向けのメソッドではありません。パフォー
マンスやメモリ管理に興味のある C Ruby の開発者向けのものです。

/...

ObjectSpace.#count_objects(result_hash = {}) -> Hash (4.0)

オブジェクトを種類ごとにカウントした結果を Hash として返します。

オブジェクトを種類ごとにカウントした結果を Hash として返します。

このメソッドは C Ruby 以外の Ruby では動かないでしょう。

@param result_hash ハッシュを指定します。与えられたハッシュは上書きして返されます。
これを利用すると測定による影響を避けることができます。

@raise TypeError 引数に Hash 以外を与えた場合、発生します。

//emlist[例][ruby]{
ObjectSpace.count_objects # => {:TOTAL=>10000, :FREE=>3011, :T_...

絞り込み条件を変える

ObjectSpace.#count_objects_size(result_hash = nil) -> Hash (4.0)

型ごとのオブジェクトサイズをバイト単位で格納したハッシュを返します。

型ごとのオブジェクトサイズをバイト単位で格納したハッシュを返します。

@param result_hash 戻り値のためのハッシュを指定します。省略した場合は新
しくハッシュを作成します。result_hash の内容は上書き
されます。プローブ効果を避けるために使用します。

戻り値の内容は完全ではない事に注意してください。この内容はあくまでもヒ
ントとして扱う必要があります。特に T_DATA の合計値は正しくないでしょう。

//emlist[例][ruby]{
ObjectSpace.count_objec...

ObjectSpace.#count_tdata_objects(result_hash = nil) -> Hash (4.0)

T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。

T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。

@param result_hash 戻り値のためのハッシュを指定します。省略した場合は新
しくハッシュを作成します。result_hash の内容は上書き
されます。プローブ効果を避けるために使用します。

@raise TypeError result_hash にハッシュ以外を指定した時に発生します。

本メソッドは普通の Ruby プログラマ向けのメソッドではありません。パフォー
マンスに興味のある C Ruby の開発者向けのもので...

ObjectSpace.#define_finalizer(obj) {|id| ...} -> Array (4.0)

obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。

obj が解放されるときに実行されるファイナライザ proc を
登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで
はなく追加登録されます。固定値 0 と proc を配列にして返します。

ブロックを指定した場合は、そのブロックがファイナライザになります。
obj の回収時にブロックは obj の ID (BasicObject#__id__)を引数とし
て実行されます。
しかし、後述の問題があるのでブロックでファイナライザを登録するのは難しいでしょう。

@param obj ファイナライザを登録したいオブジェクトを指定します。

@param proc ファイナライザ...

ObjectSpace.#define_finalizer(obj, proc) -> Array (4.0)

obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。

obj が解放されるときに実行されるファイナライザ proc を
登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで
はなく追加登録されます。固定値 0 と proc を配列にして返します。

ブロックを指定した場合は、そのブロックがファイナライザになります。
obj の回収時にブロックは obj の ID (BasicObject#__id__)を引数とし
て実行されます。
しかし、後述の問題があるのでブロックでファイナライザを登録するのは難しいでしょう。

@param obj ファイナライザを登録したいオブジェクトを指定します。

@param proc ファイナライザ...

ObjectSpace.#each_object -> Enumerator (4.0)

指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。

指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。

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

次のクラスのオブジェクトについては繰り返しません

* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass

とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy...

絞り込み条件を変える

ObjectSpace.#each_object {|object| ...} -> Integer (4.0)

指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。

指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。

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

次のクラスのオブジェクトについては繰り返しません

* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass

とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy...

ObjectSpace.#each_object(klass) -> Enumerator (4.0)

指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。

指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。

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

次のクラスのオブジェクトについては繰り返しません

* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass

とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy...

ObjectSpace.#each_object(klass) {|object| ...} -> Integer (4.0)

指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。

指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。

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

次のクラスのオブジェクトについては繰り返しません

* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass

とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy...

ObjectSpace.#garbage_collect(full_mark: true, immediate_sweep: true) -> nil (4.0)

どこからも参照されなくなったオブジェクトを回収します。 GC.start と同じです。

どこからも参照されなくなったオブジェクトを回収します。
GC.start と同じです。

@param full_mark マイナー GC を動作させる場合は false を、そうでない場
合は true を指定します。

@param immediate_sweep sweep を遅らせる(Lazy Sweep を行う)場合は false
を、そうでない場合は true を指定します。

注意: これらのキーワード引数は Ruby の実装やバージョンによって異なりま
す。将来のバージョンとの互換性も保証されませ...

ObjectSpace.#memsize_of(obj) -> Integer (4.0)

obj が消費するメモリ使用量をバイト単位で返します。

obj が消費するメモリ使用量をバイト単位で返します。

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

戻り値の内容は完全ではない事に注意してください。この内容はあくまでもヒ
ントとして扱う必要があります。特に T_DATA の値は正しくないでしょう。
2.2 以降では RVALUE のサイズを含んだ結果を返します。

本メソッドは C Ruby 以外では動作しません。

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

ObjectSpace.memsize_of(10) # => 0
ObjectSpace.memsize_o...

絞り込み条件を変える

ObjectSpace.#memsize_of_all(klass = nil) -> Integer (4.0)

すべての生存しているオブジェクトが消費しているメモリ使用量をバイト単位 で返します。

すべての生存しているオブジェクトが消費しているメモリ使用量をバイト単位
で返します。

@param klass 指定したクラスのインスタンスのメモリ使用量を返します。省略
した場合はすべてのクラスのインスタンスのメモリ使用量を返し
ます。

本メソッドは以下のような Ruby のコードで定義できます。

//emlist[例][ruby]{
def memsize_of_all klass = false
total = 0
ObjectSpace.each_object{|e|
total += ObjectSpace....

ObjectSpace.#reachable_objects_from(obj) -> Array | nil (4.0)

obj から到達可能なすべてのオブジェクトを返します。マーク不能なオブジェ クトを指定した場合は nil を返します。本メソッドを使う事でメモリリークの 調査が行えます。

obj から到達可能なすべてのオブジェクトを返します。マーク不能なオブジェ
クトを指定した場合は nil を返します。本メソッドを使う事でメモリリークの
調査が行えます。

//emlist[例][ruby]{
# 配列クラス(Array)と 'a'、'b'、'c' に到達可能。
ObjectSpace.reachable_objects_from(['a', 'b', 'c'])
# => [Array, 'a', 'b', 'c']
//}

obj が 2 つ以上の同じオブジェクト x への参照を持つ場合、戻り値に含まれ
るオブジェクト x は 1 つだけです。

//emlist[例...

ObjectSpace.#trace_object_allocations { ... } (4.0)

与えられたブロック内でオブジェクトのトレースを行います。 

与えられたブロック内でオブジェクトのトレースを行います。 

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

class C
include ObjectSpace

def foo
trace_object_allocations do
obj = Object.new
p "#{allocation_sourcefile(obj)}:#{allocation_sourceline(obj)}"
end
end
end

C.new.foo #=> "objtrace.rb:8"
//}

ObjectSpace.#trace_object_allocations_start -> nil (4.0)

オブジェクト割り当てのトレースを開始します。

オブジェクト割り当てのトレースを開始します。

@see ObjectSpace.#trace_object_allocations_stop

ObjectSpace.#trace_object_allocations_stop -> nil (4.0)

オブジェクト割り当てのトレースを終了します。

オブジェクト割り当てのトレースを終了します。

トレースを終了する為には、ObjectSpace.#trace_object_allocations_startを呼んだ回数分だけこのメソッドを呼ぶ必要があります。

@see ObjectSpace.#trace_object_allocations_start

絞り込み条件を変える

ObjectSpace.#undefine_finalizer(obj) -> object (4.0)

obj に対するファイナライザをすべて解除します。 obj を返します。

obj に対するファイナライザをすべて解除します。
obj を返します。

@param obj ファイナライザを解除したいオブジェクトを指定します。

//emlist[例][ruby]{
class Sample
def Sample.callback
proc {
puts "finalize"
}
end

def initialize
ObjectSpace.define_finalizer(self, Sample.callback)
end

def undef
ObjectSpace.undefine_final...

Open3.#capture2(*cmd) -> [String, Process::Status] (4.0)

cmdで指定されたコマンドを実行し、そのプロセスの標準出力とプロセスの終了 ステータスを表すオブジェクトを返します。

cmdで指定されたコマンドを実行し、そのプロセスの標準出力とプロセスの終了
ステータスを表すオブジェクトを返します。

@param cmd 実行するコマンドを指定します。

@return 実行したコマンドの標準出力と終了ステータスを表すオブジェクトを
配列で返します。

指定された引数はopts[:stdin_data]とopts[:binmode]以外は全て
Open3.#popen3に渡されます。opts[:stdin_data]は実行するコマンドの
標準入力に渡されます。opts[:binmode]を真に指定されると内部で使用される
パイプをバイナリモードに指定しま...

Open3.#capture2e(*cmd) -> [String, Process::Status] (4.0)

cmdで指定されたコマンドを実行し、そのプロセスの標準出力と標準エラーを1 つの文字列にしたものとプロセスの終了ステータスを表すオブジェクトを返し ます。

cmdで指定されたコマンドを実行し、そのプロセスの標準出力と標準エラーを1
つの文字列にしたものとプロセスの終了ステータスを表すオブジェクトを返し
ます。

@param cmd 実行するコマンドを指定します。

@return 実行したコマンドの標準出力と標準エラーを1つの文字列にしたものと
終了ステータスを表すオブジェクトを配列で返します。

指定された引数はopts[:stdin_data]とopts[:binmode]以外は全て
Open3.#popen3に渡されます。opts[:stdin_data]は実行するコマンドの
標準入力に渡されます。opts[:binmo...

Open3.#capture3(*cmd) -> [String, String, Process::Status] (4.0)

cmdで指定されたコマンドを実行し、そのプロセスの標準出力と標準エラー、プ ロセスの終了ステータスを表すオブジェクトを返します。

cmdで指定されたコマンドを実行し、そのプロセスの標準出力と標準エラー、プ
ロセスの終了ステータスを表すオブジェクトを返します。

@param cmd 実行するコマンドを指定します。

@return 実行したコマンドの標準出力と標準エラー、プロセスの終了ステータ
スを表すオブジェクトを配列で返します。

指定された引数はopts[:stdin_data]とopts[:binmode]以外は全て
Open3.#popen3に渡されます。opts[:stdin_data]は実行するコマンドの
標準入力に渡されます。opts[:binmode]を真に指定されると内部で使用される...

Open3.#pipeline(*cmds) -> [Process::Status] (4.0)

指定したコマンドのリストをパイプで繋いで順番に実行します。

指定したコマンドのリストをパイプで繋いで順番に実行します。

@param cmds 実行するコマンドのリストを指定します。それぞれのコマンドは
以下のように String か Array で指定します。
commandline にはコマンド全体(例. "nroff -man")を表す
String を指定します。
options には Hash で指定します。
env には環境変数を Hash で指定します。
cmdname にはコマンド名を表す ...

絞り込み条件を変える

Open3.#pipeline_r(*cmds) -> [IO, [Thread]] (4.0)

指定したコマンドのリストをパイプで繋いで順番に実行します。最後の コマンドの標準出力を受けとる事ができます。

指定したコマンドのリストをパイプで繋いで順番に実行します。最後の
コマンドの標準出力を受けとる事ができます。

@param cmds 実行するコマンドのリストを指定します。それぞれのコマンドは
以下のように String か Array で指定します。
commandline にはコマンド全体(例. "nroff -man")を表す
String を指定します。
options には Hash で指定します。
env には環境変数を Hash で指定します。
...

Open3.#pipeline_r(*cmds) {|last_stdout, wait_thrs| ... } -> () (4.0)

指定したコマンドのリストをパイプで繋いで順番に実行します。最後の コマンドの標準出力を受けとる事ができます。

指定したコマンドのリストをパイプで繋いで順番に実行します。最後の
コマンドの標準出力を受けとる事ができます。

@param cmds 実行するコマンドのリストを指定します。それぞれのコマンドは
以下のように String か Array で指定します。
commandline にはコマンド全体(例. "nroff -man")を表す
String を指定します。
options には Hash で指定します。
env には環境変数を Hash で指定します。
...

Open3.#pipeline_rw(*cmds) -> [IO, IO, [Thread]] (4.0)

指定したコマンドのリストをパイプで繋いで順番に実行します。最初の コマンドの標準入力に書き込む事も最後のコマンドの標準出力を受けとる事も できます。

指定したコマンドのリストをパイプで繋いで順番に実行します。最初の
コマンドの標準入力に書き込む事も最後のコマンドの標準出力を受けとる事も
できます。

@param cmds 実行するコマンドのリストを指定します。それぞれのコマンドは
以下のように String か Array で指定します。
commandline にはコマンド全体(例. "nroff -man")を表す
String を指定します。
options には Hash で指定します。
env には環境変数を...

Open3.#pipeline_rw(*cmds) {|first_stdin, last_stdout, wait_thrs| ... } -> () (4.0)

指定したコマンドのリストをパイプで繋いで順番に実行します。最初の コマンドの標準入力に書き込む事も最後のコマンドの標準出力を受けとる事も できます。

指定したコマンドのリストをパイプで繋いで順番に実行します。最初の
コマンドの標準入力に書き込む事も最後のコマンドの標準出力を受けとる事も
できます。

@param cmds 実行するコマンドのリストを指定します。それぞれのコマンドは
以下のように String か Array で指定します。
commandline にはコマンド全体(例. "nroff -man")を表す
String を指定します。
options には Hash で指定します。
env には環境変数を...

Open3.#pipeline_start(*cmds) -> [Thread] (4.0)

指定したコマンドのリストをパイプで繋いで順番に実行します。

指定したコマンドのリストをパイプで繋いで順番に実行します。

@param cmds 実行するコマンドのリストを指定します。それぞれのコマンドは
以下のように String か Array で指定します。
commandline にはコマンド全体(例. "nroff -man")を表す
String を指定します。
options には Hash で指定します。
env には環境変数を Hash で指定します。
cmdname にはコマンド名を表す ...

絞り込み条件を変える

<< < ... 2 3 4 5 6 ... > >>