種類
- モジュール関数 (91)
- インスタンスメソッド (87)
- 変数 (80)
ライブラリ
- English (24)
- ビルトイン (132)
- bigdecimal (2)
- continuation (1)
- delegate (1)
- digest (1)
- json (3)
- mkmf (74)
- pathname (1)
- psych (2)
- rake (8)
- rubygems (1)
-
rubygems
/ custom _ require (1) -
rubygems
/ timer (1) - un (5)
- uri (1)
キーワード
-
$ ! (1) -
$ " (1) -
$ $ (1) -
$ & (1) -
$ & # 39; (1) -
$ * (1) -
$ + (1) -
$ , (1) -
$ -0 (1) -
$ -F (1) -
$ -I (1) -
$ -K (1) -
$ -i (1) -
$ . (1) -
$ / (1) -
$ 0 (1) -
$ 1 (1) -
$ 10 (1) -
$ 11 (1) -
$ 2 (1) -
$ 3 (1) -
$ 4 (1) -
$ 5 (1) -
$ 6 (1) -
$ 7 (1) -
$ 8 (1) -
$ 9 (1) -
$ : (1) -
$ ; (1) -
$ > (1) -
$ ? (1) -
$ @ (1) -
$ ARGV (1) -
$ CFLAGS (1) -
$ CHILD _ STATUS (1) -
$ DEFAULT _ INPUT (1) -
$ DEFAULT _ OUTPUT (1) -
$ ERROR _ INFO (1) -
$ ERROR _ POSITION (1) -
$ FIELD _ SEPARATOR (1) -
$ FILENAME (1) -
$ FS (1) -
$ INPUT _ LINE _ NUMBER (1) -
$ INPUT _ RECORD _ SEPARATOR (1) -
$ KCODE (1) -
$ LAST _ MATCH _ INFO (1) -
$ LAST _ PAREN _ MATCH (1) -
$ LAST _ READ _ LINE (1) -
$ LDFLAGS (1) -
$ LOADED _ FEATURES (1) -
$ LOAD _ PATH (1) -
$ MATCH (1) -
$ NR (1) -
$ OFS (1) -
$ ORS (1) -
$ OUTPUT _ FIELD _ SEPARATOR (1) -
$ OUTPUT _ RECORD _ SEPARATOR (1) -
$ PID (1) -
$ POSTMATCH (1) -
$ PREMATCH (1) -
$ PROCESS _ ID (1) -
$ PROGRAM _ NAME (1) -
$ RS (1) -
$ SAFE (1) -
$ \ (1) -
$ _ (1) -
$ ` (1) -
$ archdir (1) -
$ defs (1) -
$ hdrdir (1) -
$ libdir (1) -
$ libs (1) -
$ sitearchdir (1) -
$ sitelibdir (1) -
$ srcdir (1) -
$ stderr (1) -
$ stdin (1) -
$ stdout (1) -
$ topdir (1) -
$ ~ (1) - BigDecimal (2)
- Complex (2)
- DelegateClass (1)
- Digest (1)
- Float (1)
- Integer (1)
- JSON (1)
- Pathname (1)
- Rational (1)
- String (1)
- URI (1)
-
_ _ dir _ _ (1) -
_ _ method _ _ (1) - ` (1)
- abort (2)
-
arg
_ config (1) -
at
_ exit (1) - autoload (1)
- autoload? (1)
-
block
_ given? (1) - callcc (1)
- caller (3)
-
caller
_ locations (2) - catch (2)
-
cc
_ command (1) -
check
_ signedness (2) -
check
_ sizeof (2) - chomp (1)
- chop (1)
-
convertible
_ int (2) -
cpp
_ command (1) -
create
_ header (1) -
create
_ makefile (1) -
create
_ tmpsrc (1) - desc (1)
-
dir
_ config (1) - directory (1)
-
dummy
_ makefile (1) -
egrep
_ cpp (2) -
enable
_ config (2) - eval (2)
- exec (4)
- exit (1)
- exit! (1)
- fail (1)
- file (1)
-
file
_ create (1) -
find
_ executable (1) -
find
_ header (1) -
find
_ library (2) -
find
_ type (2) - fork (2)
- format (1)
- gem (1)
- gets (1)
- gsub (3)
-
have
_ macro (2) -
have
_ struct _ member (2) -
have
_ type (2) - httpd (1)
- import (1)
- install (1)
-
install
_ files (1) -
install
_ rb (1) - iterator? (1)
- j (1)
- jj (1)
- libpathflag (1)
-
link
_ command (1) - load (1)
- loop (2)
-
merge
_ libs (1) - mkmf (1)
- modified? (1)
- multitask (1)
- open (1)
- p (1)
- pp (1)
- print (1)
- printf (2)
-
psych
_ y (1) - putc (1)
- puts (1)
- raise (1)
- rand (2)
- readline (1)
- readlines (1)
- require (2)
-
require
_ relative (1) - rule (1)
- select (1)
-
set
_ trace _ func (1) - sleep (2)
- spawn (4)
- sprintf (1)
- srand (2)
- sub (2)
- syscall (1)
- system (4)
- task (1)
- test (2)
- throw (1)
- time (1)
- touch (1)
-
trace
_ var (3) - trap (2)
-
try
_ compile (2) -
try
_ constant (2) -
try
_ cpp (2) -
try
_ do (2) -
try
_ func (2) -
try
_ link (2) -
try
_ run (2) -
try
_ static _ assert (2) -
try
_ type (2) -
try
_ var (2) -
untrace
_ var (1) -
wait
_ writable (1) - warn (1)
-
with
_ config (2) -
with
_ werror (2) - xpopen (1)
- xsystem (1)
- y (1)
検索結果
先頭5件
-
Kernel
$ $ OFS -> String | nil (304.0) -
$, の別名
$, の別名
require "English"
array = %w|hoge fuga ugo bar foo|
p array.join #=> "hogefugaugobarfoo"
$OUTPUT_FIELD_SEPARATOR = ","
p array.join #=> "hoge,fuga,ugo,bar,foo" -
Kernel
$ $ ORS -> String | nil (304.0) -
$\ の別名
$\ の別名
require "English"
print "hoge\nhuga\n"
$OUTPUT_RECORD_SEPARATOR = "\n"
print "fuge"
print "ugo"
# end of sample.rb
ruby sample.rb
hoge
huga
fuge
ugo -
Kernel
$ $ PID -> Integer (304.0) -
$$ の別名
$$ の別名
require "English"
p sprintf("something%s", $PID) #=> "something5543" など -
Kernel
$ $ PROCESS _ ID -> Integer (304.0) -
$$ の別名
$$ の別名
require "English"
p sprintf("something%s", $PID) #=> "something5543" など -
Kernel
$ $ PROGRAM _ NAME -> String (304.0) -
現在実行中の Ruby スクリプトの名前を表す文字列です。
現在実行中の Ruby スクリプトの名前を表す文字列です。
OS と Ruby のバージョンによっては、この変数に代入すると ps(1) の出力が変化します。
この機能はプログラムの現在の状態を表示するのに便利です。
この変数はグローバルスコープです。 -
Kernel
$ $ SAFE -> object (304.0) -
通常のグローバル変数です。
通常のグローバル変数です。
Ruby 2.7 以前は特殊変数でしたが、Ruby 3.0 から通常のグローバル変数になりました。 -
Kernel
$ $ \ -> String | nil (304.0) -
出力レコード区切りを表す文字列です。 Kernel.#print が最後にこの文字列を出力します。
...出力レコード区切りを表す文字列です。
Kernel.#print が最後にこの文字列を出力します。
デフォルトは nil で、何も出力しません。
この変数はグローバルスコープです。... -
Kernel
$ $ _ -> String | nil (304.0) -
最後に Kernel.#gets または Kernel.#readline で読み込んだ文字列です。 EOF に達した場合には、 nil になります。 (覚え方: Perlと同じ)
...最後に Kernel.#gets または Kernel.#readline で読み込んだ文字列です。
EOF に達した場合には、 nil になります。
(覚え方: Perlと同じ)
Kernel.#print のような Perl 由来の幾つかのメソッドは、引数を省略すると代わりに $_ を利用します......。
この変数はローカルスコープかつスレッドローカルです。
Ruby起動時の初期値は nil です。
@see Kernel.#print, Kernel.#gets, Kernel.#readline, Object::ARGF
=== 例
example.txt:
foo
bar
baz
このとき、コマンド ruby -e 'print while gets' example.txt... -
Kernel
$ $ ` -> String | nil (304.0) -
現在のスコープで最後に成功した正規表現のパターンマッチでマッチした 部分より前の文字列です。 最後のマッチが失敗していた場合には nil となります。
現在のスコープで最後に成功した正規表現のパターンマッチでマッチした
部分より前の文字列です。
最後のマッチが失敗していた場合には nil となります。
Regexp.last_match.pre_match と同じです。
この変数はローカルスコープかつスレッドローカル、読み取り専用です。
Ruby起動時の初期値は nil です。
//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)">(.*?)</a>] =~ str
p $`
end
... -
Kernel
$ $ archdir -> String (304.0) -
マシン固有のライブラリを置くディレクトリです。 通常は "/usr/local/lib/ruby/バージョン/arch" です。
マシン固有のライブラリを置くディレクトリです。
通常は "/usr/local/lib/ruby/バージョン/arch" です。 -
Kernel
$ $ defs -> [String] (304.0) -
拡張ライブラリをコンパイルするときのマクロ定義を指定する配列です。
...例えば
["-DHAVE_FUNC", "-DHAVE_HEADER_H"]
のような形式の配列です。
Kernel#have_func または Kernel#have_header
を呼び出すと、その検査結果が $defs に追加されます。
Kernel#create_header
はこの変数の値を参照してヘッダファイルを生成し... -
Kernel
$ $ hdrdir -> String (304.0) -
Ruby のヘッダファイル ruby.h が存在するディレクトリです。 通常は $archdir と同じで、"/usr/local/lib/ruby/バージョン/arch" です。
Ruby のヘッダファイル ruby.h が存在するディレクトリです。
通常は $archdir と同じで、"/usr/local/lib/ruby/バージョン/arch" です。 -
Kernel
$ $ libdir -> String (304.0) -
Ruby のライブラリを置くディレクトリです。 通常は "/usr/local/lib/ruby/バージョン" です。
Ruby のライブラリを置くディレクトリです。
通常は "/usr/local/lib/ruby/バージョン" です。 -
Kernel
$ $ libs -> String (304.0) -
拡張ライブラリをリンクするときに 一緒にリンクされるライブラリを指定する文字列です。
...ライブラリを指定する文字列です。
この変数の値は、例えば
"-lfoo -lbar"
のような形式の文字列です。
Kernel#have_library または Kernel#find_library
を呼び出すと、その検査結果が
間に空白をはさみつつ $libs に連結されます。... -
Kernel
$ $ srcdir -> String (304.0) -
Ruby インタプリタを make したときのソースディレクトリです。
Ruby インタプリタを make したときのソースディレクトリです。 -
Kernel
$ $ ~ -> MatchData | nil (304.0) -
現在のスコープで最後に成功したマッチに関する MatchDataオブジェクトです。 Regexp.last_match の別名です。
現在のスコープで最後に成功したマッチに関する MatchDataオブジェクトです。
Regexp.last_match の別名です。
このデータから n 番目のマッチ ($n) を取り出すためには $~[n] を使います。
この値に代入すると Regexp.last_match や、 $&, $1, $2, ... などの関連する組み込み変数の値が変化します。
MatchData オブジェクトでも nil でもない値を代入しようとすると TypeError が発生します。
この変数はローカルスコープかつスレッドローカルです。
Ruby起動時の初期値は nil です。
//emlist... -
Kernel
. # BigDecimal(s , exception: true) -> BigDecimal | nil (304.0) -
引数で指定した値を表す BigDecimal オブジェクトを生成します。
引数で指定した値を表す BigDecimal オブジェクトを生成します。
@param s 数値を表現する初期値を文字列、Integer、
Float、Rational、BigDecimal オブジェクトのい
ずれかで指定します。
文字列中のスペースは無視されます。また、判断できない文字が出現
した時点で文字列は終了したものとみなされます。
@param n 必要な有効桁数(self の最大有効桁数)を整数で指定します。 n が
0 または省略されたときは、n の値は s の有効桁数とみなされます。... -
Kernel
. # BigDecimal(s , n , exception: true) -> BigDecimal | nil (304.0) -
引数で指定した値を表す BigDecimal オブジェクトを生成します。
引数で指定した値を表す BigDecimal オブジェクトを生成します。
@param s 数値を表現する初期値を文字列、Integer、
Float、Rational、BigDecimal オブジェクトのい
ずれかで指定します。
文字列中のスペースは無視されます。また、判断できない文字が出現
した時点で文字列は終了したものとみなされます。
@param n 必要な有効桁数(self の最大有効桁数)を整数で指定します。 n が
0 または省略されたときは、n の値は s の有効桁数とみなされます。... -
Kernel
. # Complex(r , i = 0 , exception: true) -> Complex | nil (304.0) -
実部が r、虚部が i である Complex クラスのオブジェクトを生成します。
実部が r、虚部が i である Complex クラスのオブジェクトを生成します。
@param r 生成する複素数の実部。
@param i 生成する複素数の虚部。省略した場合は 0 です。
@param s 生成する複素数を表す文字列。
@param exception false を指定すると、変換できなかった場合、
例外を発生する代わりに nil を返します。
@raise ArgumentError 変換できないオブジェクトを指定した場合に発生します。
//emlist[例][ruby]{
Complex(1) # => (... -
Kernel
. # Complex(s , exception: true) -> Complex | nil (304.0) -
実部が r、虚部が i である Complex クラスのオブジェクトを生成します。
実部が r、虚部が i である Complex クラスのオブジェクトを生成します。
@param r 生成する複素数の実部。
@param i 生成する複素数の虚部。省略した場合は 0 です。
@param s 生成する複素数を表す文字列。
@param exception false を指定すると、変換できなかった場合、
例外を発生する代わりに nil を返します。
@raise ArgumentError 変換できないオブジェクトを指定した場合に発生します。
//emlist[例][ruby]{
Complex(1) # => (... -
Kernel
. # URI(uri _ str) -> object (304.0) -
与えられた URI から該当する URI::Generic のサブクラスのインスタンスを生成して 返します。scheme が指定されていない場合は、URI::Generic オブジェクトを返します。
与えられた URI から該当する URI::Generic のサブクラスのインスタンスを生成して
返します。scheme が指定されていない場合は、URI::Generic オブジェクトを返します。
@param uri_str パースしたい URI を文字列として与えます。
@raise URI::InvalidURIError パースに失敗した場合に発生します。
@see URI.parse -
Kernel
. # _ _ dir _ _ -> String | nil (304.0) -
現在のソースファイル(__FILE__)のあるディレクトリ名を正規化された絶対パ スで返します。シンボリックリンクも解決されます。また、__FILE__ が nil の場合は nil を返します。
現在のソースファイル(__FILE__)のあるディレクトリ名を正規化された絶対パ
スで返します。シンボリックリンクも解決されます。また、__FILE__ が nil
の場合は nil を返します。 -
Kernel
. # `(command) -> String (304.0) -
command を外部コマンドとして実行し、その標準出力を文字列として 返します。このメソッドは `command` の形式で呼ばれます。
...タスを得るには、$? を参照します。
コマンドの出力を得る必要がなく、単にコマンドを実行したいだけなら
Kernel.#system を使います。特に端末を制御するコマンドでは
`command` は失敗するかもしれません。
d:spec/literal#command......Errno::EXXX コマンドを実行できないときや失敗した場合に発生します。
//emlist[例][ruby]{
puts `ruby -v` #=> ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-mswin32]
puts $?.inspect #=> #<Process::Status: pid=3580,exited(0)>
//}
@see Kernel.#system,Kernel.#exec,Kernel.#spawn... -
Kernel
. # callcc {|cont| . . . . } -> object (304.0) -
継続を作成します。 Continuation を参照してください。
継続を作成します。 Continuation を参照してください。 -
Kernel
. # caller(range) -> [String] | nil (304.0) -
start 段上の呼び出し元の情報を $@ の形式のバックトレース(文字列の配列)として返します。
...します。
@param range 取得したいスタックの範囲を示す Range オブジェクトを指定します。
@see Kernel.#set_trace_func,Kernel.#raise,
Kernel.#caller_locations
//emlist[例][ruby]{
def foo
p caller(0)
p caller(1)
p caller(2)
p caller(3)
p caller(4)
end
de... -
Kernel
. # caller(start = 1) -> [String] | nil (304.0) -
start 段上の呼び出し元の情報を $@ の形式のバックトレース(文字列の配列)として返します。
...します。
@param range 取得したいスタックの範囲を示す Range オブジェクトを指定します。
@see Kernel.#set_trace_func,Kernel.#raise,
Kernel.#caller_locations
//emlist[例][ruby]{
def foo
p caller(0)
p caller(1)
p caller(2)
p caller(3)
p caller(4)
end
de... -
Kernel
. # caller(start , length) -> [String] | nil (304.0) -
start 段上の呼び出し元の情報を $@ の形式のバックトレース(文字列の配列)として返します。
...します。
@param range 取得したいスタックの範囲を示す Range オブジェクトを指定します。
@see Kernel.#set_trace_func,Kernel.#raise,
Kernel.#caller_locations
//emlist[例][ruby]{
def foo
p caller(0)
p caller(1)
p caller(2)
p caller(3)
p caller(4)
end
de... -
Kernel
. # chomp(rs = $ / ) -> String (304.0) -
$_.chomp とほぼ同じですが、置換が発生したときは、$_の内容を置き換える点が異なります。 コマンドラインオプションで -p または -n を指定した時のみ定義されます。
$_.chomp とほぼ同じですが、置換が発生したときは、$_の内容を置き換える点が異なります。
コマンドラインオプションで -p または -n を指定した時のみ定義されます。
暗号的になりすぎるきらいがあるため、このメソッドの使用は推奨されていません。
今後はより明示的な $_.chomp を使ってください。
$_.chomp とこのメソッド chomp は以下の点で違いがあります。
* chomp は $_ の値をコピーして、コピーの方を更新し、
$_ に再代入します。
@param rs 末尾から削除する改行コードを指定します。
//emlist[例: ruby -n... -
Kernel
. # chop -> String (304.0) -
$_.chop とほぼ同じですが、置換が発生したときは、$_の内容を置き換える点が異なります。 コマンドラインオプションで -p または -n を指定した時のみ定義されます。
$_.chop とほぼ同じですが、置換が発生したときは、$_の内容を置き換える点が異なります。
コマンドラインオプションで -p または -n を指定した時のみ定義されます。
暗号的になりすぎるきらいがあるため、このメソッドの使用は推奨されていません。
今後はより明示的な $_.chop を使ってください。
$_.chopとこのメソッド chop は以下の点で違いがあります。
* chop は $_ の値をコピーして、コピーの方を更新し、
$_ に再代入します。
//emlist[例][ruby]{
$_ = "test\r\n"
$_ # => "test... -
Kernel
. # eval(expr) -> object (304.0) -
文字列 expr を Ruby プログラムとして評価してその結果を返しま す。第2引数に Binding オブジェクトを与えた場合、 そのオブジェクトを生成したコンテキストで文字列を評価します。
...val('a = RUBY_RELEASE_DATE')
p a #=> "2007-03-13"
eval('def fuga;p 777 end')
fuga #=> 777
eval('raise RuntimeError', binding, 'XXX.rb', 4)
#=> XXX.rb:4: RuntimeError (RuntimeError)
# from ..:9
//}
@see Kernel.#binding,Module#module_eval,BasicObject#instance_eval,Object#method,Object#send... -
Kernel
. # eval(expr , bind , fname = "(eval)" , lineno = 1) -> object (304.0) -
文字列 expr を Ruby プログラムとして評価してその結果を返しま す。第2引数に Binding オブジェクトを与えた場合、 そのオブジェクトを生成したコンテキストで文字列を評価します。
...val('a = RUBY_RELEASE_DATE')
p a #=> "2007-03-13"
eval('def fuga;p 777 end')
fuga #=> 777
eval('raise RuntimeError', binding, 'XXX.rb', 4)
#=> XXX.rb:4: RuntimeError (RuntimeError)
# from ..:9
//}
@see Kernel.#binding,Module#module_eval,BasicObject#instance_eval,Object#method,Object#send... -
Kernel
. # exec(command , options={}) -> () (304.0) -
引数で指定されたコマンドを実行します。
引数で指定されたコマンドを実行します。
プロセスの実行コードはそのコマンド(あるいは shell)になるので、
起動に成功した場合、このメソッドからは戻りません。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options... -
Kernel
. # exec(env , command , options={}) -> () (304.0) -
引数で指定されたコマンドを実行します。
引数で指定されたコマンドを実行します。
プロセスの実行コードはそのコマンド(あるいは shell)になるので、
起動に成功した場合、このメソッドからは戻りません。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options... -
Kernel
. # exec(env , program , *args , options={}) -> () (304.0) -
引数で指定されたコマンドを実行します。
...イルデスクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。
=== 引数の解釈
この形式で呼び出した場合、空白や shell のメタキャラクタも
そ......替えて以下を実行
$ ps aux|grep sleep
xxxx 32754 0.0 0.0 2580 468 pts/3 S+ 22:01 0:00 mysleep 600
xxxx 32761 0.0 0.0 2824 792 pts/6 S+ 22:01 0:00 grep sleep
@see Kernel.#system,Kernel.#`,Kernel.#spawn,Kernel.#fork,IO.popen,IO.pipe,Kernel.#open,exec(3)... -
Kernel
. # exec(program , *args , options={}) -> () (304.0) -
引数で指定されたコマンドを実行します。
...イルデスクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。
=== 引数の解釈
この形式で呼び出した場合、空白や shell のメタキャラクタも
そ......替えて以下を実行
$ ps aux|grep sleep
xxxx 32754 0.0 0.0 2580 468 pts/3 S+ 22:01 0:00 mysleep 600
xxxx 32761 0.0 0.0 2824 792 pts/6 S+ 22:01 0:00 grep sleep
@see Kernel.#system,Kernel.#`,Kernel.#spawn,Kernel.#fork,IO.popen,IO.pipe,Kernel.#open,exec(3)... -
Kernel
. # fail(error _ type , message = nil , backtrace = caller(0) , cause: $ !) -> () (304.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
...します。
@param message 例外のメッセージとなる文字列です。
@param backtrace 例外発生時のスタックトレースで、Kernel.#caller の戻り値と同じ
形式で指定しなければいけません。
@param cause 現在の例外($!)の代わりに Exception#cause に......end
foo(4) #=> in method.in rescue.in method.in else.in ensure.
//}
//emlist[例3][ruby]{
class MyException
def exception(mesg=nil)
SecurityError.new(mesg)
end
end
begin
raise MyException.new
rescue SecurityError
p $! #=> #<SecurityError: SecurityError>
end
//}
@see Kernel.#caller... -
Kernel
. # fork -> Integer | nil (304.0) -
fork(2) システムコールを使ってプロセスの複製を作 ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは nil を返します。ブロックを指定して呼び出した場合には、生成し た子プロセスでブロックを評価します。
...puts "parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 79055, child pid: 79602
# 親プロセスでの処理
# ...
# 子プロセスの終了を待って終了。
Process.waitpid(child_pid)
//}
@see IO.popen,IO.pipe,Kernel.#at_exit,Kernel.#exit!, fork(2)... -
Kernel
. # fork { . . . } -> Integer | nil (304.0) -
fork(2) システムコールを使ってプロセスの複製を作 ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは nil を返します。ブロックを指定して呼び出した場合には、生成し た子プロセスでブロックを評価します。
...puts "parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 79055, child pid: 79602
# 親プロセスでの処理
# ...
# 子プロセスの終了を待って終了。
Process.waitpid(child_pid)
//}
@see IO.popen,IO.pipe,Kernel.#at_exit,Kernel.#exit!, fork(2)... -
Kernel
. # load(file , priv = false) -> true (304.0) -
Ruby プログラム file をロードして実行します。再ロード可能です。
...。
@raise LoadError ロードに失敗した場合に発生します。
@see Kernel.#require
=== require と load の違い
Kernel.#require は同じファイルは一度だけしかロードしませんが、
Kernel.#load は無条件にロードします。
また、require は拡張子.rb や... -
Kernel
. # loop -> Enumerator (304.0) -
(中断されない限り)永遠にブロックの評価を繰り返します。 ブロックが指定されなければ、代わりに Enumerator を返します。
...by]{
loop do
print "Input: "
line = gets
break if !line or line =~ /^qQ/
# ...
end
//}
与えられたブロック内で StopIteration を Kernel.#raise すると
ループを終了して Enumerator が最後に返した値を返します。
ループを終了させる場合、通常は bre... -
Kernel
. # loop { . . . } -> object | nil (304.0) -
(中断されない限り)永遠にブロックの評価を繰り返します。 ブロックが指定されなければ、代わりに Enumerator を返します。
...by]{
loop do
print "Input: "
line = gets
break if !line or line =~ /^qQ/
# ...
end
//}
与えられたブロック内で StopIteration を Kernel.#raise すると
ループを終了して Enumerator が最後に返した値を返します。
ループを終了させる場合、通常は bre... -
Kernel
. # open(file , mode _ enc = "r" , perm = 0666) {|io| . . . } -> object (304.0) -
file をオープンして、IO(Fileを含む)クラスのインスタンスを返します。
file をオープンして、IO(Fileを含む)クラスのインスタンスを返します。
ブロックが与えられた場合、指定されたファイルをオープンし、
生成した IO オブジェクトを引数としてブロックを実行します。
ブロックの終了時や例外によりブロックを脱出するとき、
ファイルをクローズします。ブロックを評価した結果を返します。
ファイル名 file が `|' で始まる時には続く文字列をコマンドとして起動し、
コマンドの標準入出力に対してパイプラインを生成します
ファイル名が "|-" である時、open は Ruby の子プロセス
を生成し、その子プロセスとの間のパイプ(IOオブジェクト)を... -
Kernel
. # p(*arg) -> object | Array (304.0) -
引数を人間に読みやすい形に整形して改行と順番に標準出力 $stdout に出力します。主にデバッグに使用します。
...された引数 arg を返します。複数の引数が指定された場合はそれらを要素とする配列を返します。
//emlist[例][ruby]{
puts "" #=> (空行)
p "" #=> ""
puts 50,"50"
#=> 50
#=> 50
p 50,"50"
#=> 50
#=> "50"
//}
@see Object#inspect,Kernel.#puts,Kernel.#print... -
Kernel
. # pp(*obj) -> object (304.0) -
指定されたオブジェクト obj を標準出力に見やすい形式(プリティプリント)で出力します。 obj それぞれを引数として PP.pp を呼ぶことと同等です。
指定されたオブジェクト obj を標準出力に見やすい形式(プリティプリント)で出力します。
obj それぞれを引数として PP.pp を呼ぶことと同等です。
初回呼び出し時に自動的に pp を require します。
@param obj 表示したいオブジェクトを指定します。
//emlist[例][ruby]{
require 'pp'
b = [1, 2, 3] * 4
a = [b, b]
a << a
pp a
#=> [[1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3],
# [1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2,... -
Kernel
. # raise(error _ type , message = nil , backtrace = caller(0) , cause: $ !) -> () (304.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
...します。
@param message 例外のメッセージとなる文字列です。
@param backtrace 例外発生時のスタックトレースで、Kernel.#caller の戻り値と同じ
形式で指定しなければいけません。
@param cause 現在の例外($!)の代わりに Exception#cause に......end
foo(4) #=> in method.in rescue.in method.in else.in ensure.
//}
//emlist[例3][ruby]{
class MyException
def exception(mesg=nil)
SecurityError.new(mesg)
end
end
begin
raise MyException.new
rescue SecurityError
p $! #=> #<SecurityError: SecurityError>
end
//}
@see Kernel.#caller... -
Kernel
. # rand(max = 0) -> Integer | Float (304.0) -
擬似乱数を発生させます。
...を、少なくとも片方が実数の場合は実数を返します。
range に含まれる数が無い場合は nil を返します。
まだ Kernel.#srand が呼ばれていなければ自動的に呼び出します。
擬似乱数生成器として Random クラスオブジェクトを使用......10) #=> 1 (0 から 9 までの整数。終端を含まない)
rand(1.0..1.5) #=> 1.1362963047752432 (1.0 以上 1.5 以下の実数)
rand(1.0...1.5) #=> 1.1382321275715483 (1.0 以上 1.5 未満の実数)
rand(1..0) #=> nil
//}
@see Kernel.#srand, Random#rand, Random... -
Kernel
. # rand(range) -> Integer | Float | nil (304.0) -
擬似乱数を発生させます。
...を、少なくとも片方が実数の場合は実数を返します。
range に含まれる数が無い場合は nil を返します。
まだ Kernel.#srand が呼ばれていなければ自動的に呼び出します。
擬似乱数生成器として Random クラスオブジェクトを使用......10) #=> 1 (0 から 9 までの整数。終端を含まない)
rand(1.0..1.5) #=> 1.1362963047752432 (1.0 以上 1.5 以下の実数)
rand(1.0...1.5) #=> 1.1382321275715483 (1.0 以上 1.5 未満の実数)
rand(1..0) #=> nil
//}
@see Kernel.#srand, Random#rand, Random... -
Kernel
. # readline(rs = $ / ) -> String (304.0) -
ARGFから一行読み込んで、それを返します。 行の区切りは引数 rs で指定した文字列になります。
...t ---
hello
it
common
# --- c.txt ---
ARGF
# スクリプトに指定した引数 (Object::ARGV を参照) をファイル名と
# みなして、それらのファイルを連結した 1 つの仮想ファイルを表すオブジェクトです。
//}
@see $/,ARGF,Kernel.#readlines,Kernel.#gets... -
Kernel
. # readlines(rs = $ / ) -> [String] (304.0) -
ARGFを Kernel.#gets(rs) でEOFまで読み込んで、その各行を要素としてもつ配列を返します。 行の区切りは引数 rs で指定した文字列になります。
...ARGFを Kernel.#gets(rs) でEOFまで読み込んで、その各行を要素としてもつ配列を返します。
行の区切りは引数 rs で指定した文字列になります。
rs に nil を指定すると行区切りなしとみなします。
空文字列 "" を指定すると連続......s("") #=> ["hello\nit\n\n", "common\n", "hello\nit\n\n", "common\n"]
ARGV << 'b.txt' << 'b.txt'
p readlines('it') #=> ["hello\nit", "\n\ncommon\n", "hello\nit", "\n\ncommon\n"]
p readlines #=> []
//}
//emlist[b.txt][ruby]{
hello
it
common
//}
@see $/,ARGF,Kernel.#gets, Kernel.#readline... -
Kernel
. # require(feature) -> bool (304.0) -
Ruby ライブラリ feature をロードします。拡張子補完を行い、 同じファイルの複数回ロードはしません。
...(/prime/).size # => 0
require "prime" # => true
$LOADED_FEATURES.grep(/prime/).size # => 1
require "prime" # => false
begin
require "invalid"
rescue LoadError => e
e.message # => "cannot load such file -- invalid"
end
//}
@see Kernel.#load,Kernel.#autoload,Kernel.#require_relative... -
Kernel
. # sleep -> Integer (304.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 (304.0) -
sec 秒だけプログラムの実行を停止します。
sec 秒だけプログラムの実行を停止します。
sec が省略された場合、他スレッドからの Thread#run
などで明示的に起こさない限り永久にスリープします。Thread#runを呼ぶとその時点で
sleepの実行が中断されます。
@param sec 停止する秒数を非負の数値で指定します。浮動小数点数も指定できます。
省略された場合、永久にスリープします。
@return 実際に停止していた秒数 (整数に丸められた値) です。
//emlist[例][ruby]{
it = Thread.new do
sleep
puts 'it_end'
end... -
Kernel
. # srand -> Integer (304.0) -
Kernel.#rand や Random.rand で使用される擬似乱数生成器の種を設定し、古い種を返します。
...
Kernel.#rand や Random.rand で使用される擬似乱数生成器の種を設定し、古い種を返します。
seed に整数を指定するとその絶対値を乱数の種に設定します。
それ以外の値を指定した場合は seed.to_int が指定されたものとして扱いま......す。
seed に既知の値を与えると、以前の Kernel.#rand の値を再現できます。
seed が省略された時には
現在の時刻やプロセス ID、srand を呼び出した回数、
また可能なら /dev/urandom から読み出したデータなどを元に種を作ります......6) #=> 3
p rand(0) #=> 0.938911141393347
p rand(0) #=> 0.915824970865251
seeds << srand(num)
p rand(6) #=> 3
p rand(6) #=> 0
p rand(0) #=> 0.445804380918972
p rand(0) #=> 0.422248634121701
seeds << srand
p seeds #=> [455675, 2995620310703489221660585195204777696, 455675]
//}
@see Kernel.#rand... -
Kernel
. # srand(seed) -> Integer (304.0) -
Kernel.#rand や Random.rand で使用される擬似乱数生成器の種を設定し、古い種を返します。
...
Kernel.#rand や Random.rand で使用される擬似乱数生成器の種を設定し、古い種を返します。
seed に整数を指定するとその絶対値を乱数の種に設定します。
それ以外の値を指定した場合は seed.to_int が指定されたものとして扱いま......す。
seed に既知の値を与えると、以前の Kernel.#rand の値を再現できます。
seed が省略された時には
現在の時刻やプロセス ID、srand を呼び出した回数、
また可能なら /dev/urandom から読み出したデータなどを元に種を作ります......6) #=> 3
p rand(0) #=> 0.938911141393347
p rand(0) #=> 0.915824970865251
seeds << srand(num)
p rand(6) #=> 3
p rand(6) #=> 0
p rand(0) #=> 0.445804380918972
p rand(0) #=> 0.422248634121701
seeds << srand
p seeds #=> [455675, 2995620310703489221660585195204777696, 455675]
//}
@see Kernel.#rand... -
Kernel
. # syscall(num , *arg) -> Integer (304.0) -
numで指定された番号のシステムコールを実行します。 第2引数以降をシステムコールの引数として渡します。
numで指定された番号のシステムコールを実行します。
第2引数以降をシステムコールの引数として渡します。
どの数値がどのシステムコールに対応するかは、
syscall(2) や
/usr/include/sys/syscall.h を参照してください。
システムコールの慣習に従い、syscall(2)
が -1 を返す場合には例外 Errno::EXXX が発生します。
それ以外では、返した値をそのまま数値で返します。
ライブラリ fiddle を使えばより高レベルな操作ができます。
@param num システムコール番号です。
@param arg 文字列か、整数です。最大 9 ... -
Kernel
. # warn(*message , uplevel: nil , category: nil) -> nil (304.0) -
message を 標準エラー出力 $stderr に出力します。 $VERBOSE フラグ が nil のときは何も出力しません。
message を 標準エラー出力 $stderr に出力します。 $VERBOSE
フラグ が nil のときは何も出力しません。
文字列以外のオブジェクトが引数として与えられた場合には、
to_s メソッドにより文字列に変換してから出力します。
uplevel を指定しない場合は、
このメソッドは以下と同じです。
//emlist[][ruby]{
$stderr.puts(*message) if !$VERBOSE.nil? && !message.empty?
nil
//}
@param message 出力するオブジェクトを任意個指定します。
@param upleve... -
Kernel
. # block _ given? -> bool (40.0) -
メソッドにブロックが与えられていれば真を返します。
メソッドにブロックが与えられていれば真を返します。
このメソッドはカレントコンテキストにブロックが与えられているかを調べるので、
メソッド内部以外で使っても単に false を返します。
iterator? は (ブロックが必ずイテレートするとはいえないので)推奨されていないの
で block_given? を使ってください。
//emlist[例][ruby]{
def check
if block_given?
puts "Block is given."
else
puts "Block isn't given."
end
end
check{} #=... -
Kernel
# mkmf -> () (22.0) -
mkmf を使って Makefile を作成します。
mkmf を使って Makefile を作成します。
ruby -run -e mkmf -- [OPTION] EXTNAME [OPTION]
-d ARGS run dir_config
-h ARGS run have_header
-l ARGS run have_library
-f ARGS run have_func
-v ARGS run have_var
-t ARGS run have_type
-m ARGS run have_macro
-c ARGS run have_const
--vendor install to ...