種類
- インスタンスメソッド (391)
- モジュール関数 (174)
- 特異メソッド (148)
- クラス (4)
- 変数 (2)
クラス
-
ARGF
. class (9) - Array (50)
- BasicObject (3)
- Binding (1)
- Complex (6)
- Dir (38)
- Encoding (1)
-
Encoding
:: Converter (2) - Enumerator (5)
-
Enumerator
:: Lazy (15) - Exception (9)
- Fiber (2)
- File (38)
-
File
:: Stat (2) - Float (2)
- Hash (10)
- IO (122)
- Integer (13)
- KeyError (2)
- MatchData (8)
- Module (22)
- Numeric (6)
- Object (15)
- Proc (6)
- Random (8)
- Range (21)
- Rational (7)
- Regexp (3)
- String (28)
- Struct (7)
- SystemCallError (5)
- SystemExit (1)
- Thread (17)
-
Thread
:: Mutex (4) - ThreadGroup (1)
- Time (11)
- TracePoint (9)
- UnboundMethod (1)
モジュール
- Comparable (5)
- Enumerable (13)
- FileTest (15)
- Kernel (65)
- Marshal (4)
- Math (27)
- ObjectSpace (4)
- Process (32)
-
Process
:: GID (8) -
Process
:: Sys (15) -
Process
:: UID (7) - Signal (2)
キーワード
-
$ ! (1) -
$ @ (1) - & (1)
- * (3)
- ** (1)
- + (1)
- - (1)
-
/ (1) - < (2)
- << (1)
- <= (2)
- == (2)
- === (3)
- =~ (2)
- > (2)
- >= (2)
- Array (1)
- Complex (2)
- Fiber (1)
- Float (1)
- Hash (1)
- Integer (1)
- Rational (1)
- RuntimeError (1)
- String (1)
- Thread (1)
- TracePoint (1)
- [] (18)
- []= (11)
-
_ id2ref (1) - ` (1)
- abort (2)
- acos (1)
- acosh (1)
- add (1)
- advise (1)
- asin (1)
- asinh (1)
- at (1)
- atan (1)
- atan2 (1)
- atanh (1)
- atime (2)
- autoload (1)
- backtrace (1)
-
backtrace
_ locations (1) - begin (2)
- between? (1)
- bind (1)
- binmode (1)
- birthtime (3)
- blockdev? (1)
- bsearch (4)
- bytes (2)
- call (1)
-
callee
_ id (1) - caller (3)
- cause (1)
- cbrt (1)
- ceil (1)
-
change
_ privilege (2) - chardev? (1)
- chars (2)
- chdir (4)
- children (2)
- chmod (2)
- chown (2)
- chr (2)
- chroot (1)
- chunk (1)
-
chunk
_ while (1) -
class
_ variable _ get (1) -
clock
_ gettime (1) - clone (2)
- close (1)
-
close
_ read (1) -
close
_ write (1) - coerce (1)
- collect (1)
-
collect
_ concat (1) - combination (2)
- compile (1)
-
const
_ get (1) -
const
_ missing (1) - convert (1)
- cos (1)
- cosh (1)
-
count
_ objects (1) - ctime (2)
- cycle (2)
- daemon (1)
-
define
_ finalizer (2) -
define
_ method (4) - delete (2)
-
delete
_ at (1) -
deprecate
_ constant (1) - detach (1)
- detect (2)
- digits (2)
- directory? (1)
- drop (1)
- dump (2)
- dup (2)
- each (10)
-
each
_ byte (2) -
each
_ char (2) -
each
_ child (4) -
each
_ line (6) - egid= (1)
- eid (1)
- eid= (2)
- empty? (1)
- end (2)
- entries (2)
-
enum
_ for (4) - eof (2)
- eof? (2)
- erf (1)
- erfc (1)
- errno (1)
- euid= (1)
- eval (2)
- event (1)
- exception (2)
- exec (4)
- exist? (1)
- exp (1)
- fail (3)
- fcntl (1)
- fdatasync (1)
- feed (1)
- fetch (10)
-
fetch
_ values (2) - file? (1)
- fileno (3)
- find (3)
-
find
_ all (1) - finish (1)
- first (4)
-
flat
_ map (1) - flatten (1)
- flatten! (1)
- flock (1)
- floor (1)
- flush (1)
-
for
_ fd (1) - foreach (6)
- fork (5)
- frexp (1)
-
from
_ name (2) - fsync (1)
- ftype (1)
- gamma (1)
- gcd (1)
- gcdlcm (1)
- getc (1)
- getegid (1)
- geteuid (1)
- getgid (1)
- getpgid (1)
- getpgrp (1)
- getpriority (1)
- getrlimit (1)
- gets (4)
- getsid (1)
- getuid (1)
- getwd (1)
- gid= (1)
- gm (2)
-
grant
_ privilege (2) - groups (1)
- groups= (1)
- grpowned? (1)
-
handle
_ interrupt (1) - hypot (1)
- identical? (1)
- include (2)
- initgroups (1)
-
initialize
_ copy (1) - insert (1)
- inspect (2)
-
instance
_ eval (2) -
instance
_ method (1) - ioctl (1)
- isatty (1)
- issetugid (1)
- join (4)
- key (1)
- kill (1)
- lambda (2)
- last (4)
- lchmod (1)
- lchown (1)
- lcm (1)
- ldexp (1)
- lgamma (1)
- lineno (2)
- lineno= (1)
- lines (6)
- link (1)
- load (2)
- local (2)
-
local
_ variable _ get (1) - lock (1)
- log (2)
- log10 (1)
- log2 (1)
- loop (2)
- lstat (2)
- lutime (1)
- map (1)
-
marshal
_ load (1) - max (8)
- maxgroups (1)
- maxgroups= (1)
- method (1)
-
method
_ id (1) -
method
_ missing (1) - min (8)
- mkdir (1)
- mktime (2)
- mtime (2)
- name= (1)
- new (22)
- next (1)
-
next
_ values (1) - now (1)
- offset (2)
- open (10)
- ord (1)
- owned? (1)
- p (1)
- path (2)
- peek (1)
-
peek
_ values (1) -
pending
_ interrupt? (1) - permutation (2)
- pid (1)
- pipe (8)
- pipe? (1)
- pop (2)
- popen (14)
- pos (2)
- pos= (2)
- pow (2)
- pread (1)
- print (2)
- printf (3)
- private (2)
-
private
_ constant (1) - proc (2)
- protected (1)
- public (2)
-
public
_ constant (1) -
public
_ instance _ method (1) -
public
_ method (1) -
public
_ send (2) - putc (2)
- puts (2)
- pwd (1)
- pwrite (1)
- quo (1)
-
raised
_ exception (1) - rand (6)
- rationalize (2)
-
re
_ exchange (2) - read (5)
-
read
_ nonblock (1) - readbyte (2)
- readchar (2)
- readline (7)
- readlines (7)
- readlink (1)
- readpartial (1)
- realdirpath (1)
- realpath (1)
- receiver (1)
- rehash (1)
- reject (1)
-
remove
_ class _ variable (1) -
remove
_ const (1) -
remove
_ instance _ variable (1) -
remove
_ method (1) - rename (1)
- reopen (3)
-
repeated
_ combination (2) -
repeated
_ permutation (2) - replace (1)
-
report
_ on _ exception (2) -
report
_ on _ exception= (2) - require (1)
-
require
_ relative (1) -
respond
_ to? (1) - restore (1)
- resume (1)
-
return
_ value (1) - rewind (2)
- rmdir (1)
- rotate (1)
- rotate! (1)
- round (3)
- run (1)
- sample (4)
- seek (2)
- select (2)
-
set
_ backtrace (1) -
set
_ trace _ func (1) - setbyte (1)
- setegid (1)
- seteuid (1)
- setgid (1)
- setpgid (1)
- setpgrp (1)
- setpriority (1)
- setregid (1)
- setresgid (1)
- setresuid (1)
- setreuid (1)
- setrgid (1)
- setrlimit (2)
- setruid (1)
- setsid (1)
- setuid (1)
- setuid? (1)
- shift (2)
- sin (1)
-
singleton
_ class (1) -
singleton
_ method (1) - sinh (1)
- size (2)
- size? (1)
- sleep (1)
- slice (6)
- socket? (1)
- spawn (5)
- sqrt (2)
- start (1)
- stat (2)
- status (2)
- step (8)
- sub (2)
- switch (4)
- symlink (1)
- sync (1)
- sync= (1)
- synchronize (1)
- syscall (1)
- sysopen (1)
- sysread (1)
- sysseek (1)
- system (4)
- syswrite (1)
- take (1)
- tan (1)
- tanh (1)
- tell (2)
- throw (1)
- times (1)
-
to
_ enum (4) -
to
_ f (1) -
to
_ i (4) -
to
_ path (1) -
to
_ r (1) -
to
_ s (1) - trace (1)
- trap (2)
- truncate (3)
- tty? (1)
- uid= (1)
-
undef
_ method (1) - ungetc (1)
-
unicode
_ normalize (1) -
unicode
_ normalize! (1) -
unicode
_ normalized? (1) - unlink (2)
- unlock (1)
- urandom (1)
- utc (2)
- utime (1)
-
values
_ at (1) - wait (1)
- wait2 (1)
- waitpid (1)
- waitpid2 (1)
- wakeup (1)
- warn (1)
- write (1)
-
write
_ nonblock (1) - yield (2)
- zero? (1)
- zip (2)
- | (1)
検索結果
先頭5件
-
Thread
# raise(error _ type , message , traceback) -> () (78382.0) -
自身が表すスレッドで強制的に例外を発生させます。
自身が表すスレッドで強制的に例外を発生させます。
@param error_type Kernel.#raise を参照してください。
@param message Kernel.#raise を参照してください。
@param traceback Kernel.#raise を参照してください。
Thread.new {
sleep 1
Thread.main.raise "foobar"
}
begin
sleep
rescue
p $!, $@
end
=> #<RuntimeError: foobar>
[... -
Kernel
. # raise -> () (69406.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
例外を発生させます。
発生した例外は変数 $! に格納されます。また例外が
発生した時のスタックトレースは変数 $@ に格納され
ます。発生した例外は rescue 節で捕捉できます。
引数無しの場合は、同スレッドの同じブロック内で最後に rescue された
例外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or d... -
Kernel
. # raise(error _ type , message = nil , backtrace = caller(0) , cause: $ !) -> () (69406.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
例外を発生させます。
発生した例外は変数 $! に格納されます。また例外が
発生した時のスタックトレースは変数 $@ に格納され
ます。発生した例外は rescue 節で捕捉できます。
引数無しの場合は、同スレッドの同じブロック内で最後に rescue された
例外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or d... -
Kernel
. # raise(message , cause: $ !) -> () (69406.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
例外を発生させます。
発生した例外は変数 $! に格納されます。また例外が
発生した時のスタックトレースは変数 $@ に格納され
ます。発生した例外は rescue 節で捕捉できます。
引数無しの場合は、同スレッドの同じブロック内で最後に rescue された
例外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or d... -
TracePoint
# raised _ exception -> Exception (42361.0) -
発生した例外を返します。
発生した例外を返します。
@raise RuntimeError :raise イベントのためのイベントフックの外側で実行し
た場合に発生します。
//emlist[例][ruby]{
trace = TracePoint.new(:raise) do |tp|
tp.raised_exception # => #<ZeroDivisionError: divided by 0>
end
trace.enable
begin
0/0
rescue
end
//} -
Kernel
. # fail -> () (24106.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
例外を発生させます。
発生した例外は変数 $! に格納されます。また例外が
発生した時のスタックトレースは変数 $@ に格納され
ます。発生した例外は rescue 節で捕捉できます。
引数無しの場合は、同スレッドの同じブロック内で最後に rescue された
例外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or d... -
Kernel
. # fail(error _ type , message = nil , backtrace = caller(0) , cause: $ !) -> () (24106.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
例外を発生させます。
発生した例外は変数 $! に格納されます。また例外が
発生した時のスタックトレースは変数 $@ に格納され
ます。発生した例外は rescue 節で捕捉できます。
引数無しの場合は、同スレッドの同じブロック内で最後に rescue された
例外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or d... -
Kernel
. # fail(message , cause: $ !) -> () (24106.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
例外を発生させます。
発生した例外は変数 $! に格納されます。また例外が
発生した時のスタックトレースは変数 $@ に格納され
ます。発生した例外は rescue 節で捕捉できます。
引数無しの場合は、同スレッドの同じブロック内で最後に rescue された
例外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or d... -
IO
# advise(advice , offset=0 , len=0) -> nil (24097.0) -
posix_fadvise(2) を呼びだし、 ファイルへのアクセスパターンをOSに知らせます。
posix_fadvise(2) を呼びだし、
ファイルへのアクセスパターンをOSに知らせます。
advice には以下のいずれかのシンボルを指定します。
* :normal - デフォルト
* :sequential - データは前から順にアクセスされる
* :random - データはランダムアクセスされる
* :willneed - データはこの直後にアクセスされる
* :dontneed - データは直後にはアクセスしない
* :noreuse - データは一度しかアクセスされない
これらの advice が具体的に何をするのかはプラットフォーム依存です。
... -
Array
# []=(start , length , val) (24088.0) -
インデックス start から length 個の要素を配列 val の内容で置き換えます。 start が自身の末尾を越える時には配列の長さを自動的に拡張し、拡張した領域を nil で初期化します。
インデックス start から length 個の要素を配列 val の内容で置き換えます。
start が自身の末尾を越える時には配列の長さを自動的に拡張し、拡張した領域を nil で初期化します。
//emlist[例][ruby]{
ary = [0, 1, 2, 3]
ary[1, 2] = ["a", "b", "c", "d"]
p ary #=> [0, "a", "b", "c", "d", 3]
ary = [0, 1, 2]
ary[5, 1] = "Z"
p ary #=> ... -
Kernel
. # putc(ch) -> object (24079.0) -
文字 ch を 標準出力 $stdout に出力します。
文字 ch を 標準出力 $stdout に出力します。
ch が数値なら 0 〜 255 の範囲の対応する文字を出力します。
ch が文字列なら、その先頭1文字を出力します。
どちらでもない場合は、ch.to_int で整数に変換を試みます。
@param ch 出力する文字です。数または文字列で指定します。
@return ch を返します
@raise RangeError Bignum を引数にした場合に発生します。
@raise IOError 標準出力が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX 出力に失敗した場合に発生します。
@... -
Thread
. handle _ interrupt(hash) { . . . } -> object (24079.0) -
スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを 実行します。
スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを
実行します。
「割り込み」とは、非同期イベントや Thread#raise や
Thread#kill、Signal.#trap(未サポート)、メインスレッドの終了
(メインスレッドが終了すると、他のスレッドも終了されます)を意味します。
@param hash 例外クラスがキー、割り込みのタイミングを指定する
Symbol が値の Hash を指定します。
値の内容は以下のいずれかです。
: :immediate
すぐに割り込みます。
: :on_block... -
BasicObject
# instance _ eval {|obj| . . . } -> object (24061.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを
評価してその結果を返します。
オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行するということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。
ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。
メソッド定義の中で instance_eval でメソッドを定義した場... -
BasicObject
# instance _ eval(expr , filename = "(eval)" , lineno = 1) -> object (24061.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを
評価してその結果を返します。
オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行するということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。
ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。
メソッド定義の中で instance_eval でメソッドを定義した場... -
File
# birthtime -> Time (24061.0) -
作成された時刻を Time オブジェクトとして返します。
作成された時刻を Time オブジェクトとして返します。
@raise IOError 自身が close されている場合に発生します。
@raise Errno::EXXX ファイルの時刻の取得に失敗した場合に発生します。
@raise NotImplementedError Windows のような birthtime のない環境で発生します。
File.new("testfile").birthtime #=> Wed Apr 09 08:53:14 CDT 2003
@see File#lstat, File#atime, File#ctime, File#mti... -
IO
# pread(maxlen , offset , outbuf = "") -> string (24061.0) -
preadシステムコールを使ってファイルポインタを変更せずに、また現在のファイルポインタに 依存せずにmaxlenバイト読み込みます。
preadシステムコールを使ってファイルポインタを変更せずに、また現在のファイルポインタに
依存せずにmaxlenバイト読み込みます。
IO#seekとIO#readの組み合わせと比べて、アトミックな操作に
なるという点が優れていて、複数スレッド/プロセスから同じIOオブジェクトを
様々な位置から読み込むことを許します。
どのユーザー空間のIO層のバッファリングもバイパスします。
@param maxlen 読み込むバイト数を指定します。
@param offset 読み込み開始位置のファイルの先頭からのオフセットを指定します。
@param outbuf データを受け取る String... -
IO
# read(length = nil , outbuf = "") -> String | nil (24061.0) -
length バイト読み込んで、その文字列を返します。
length バイト読み込んで、その文字列を返します。
引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
動作します。
既に EOF に達していれば nil を返します。
ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。
例えば、open(空ファイル) {|f| f.read } は "" となります。
@param length 読み込むサイズを整数で指定します。
nil が指定された場合、EOF までの全てのデータを読み込んで、その文字列を返します。... -
IO
# read _ nonblock(maxlen , outbuf = nil , exception: true) -> String | Symbol | nil (24061.0) -
IO をノンブロッキングモードに設定し、 その後で read(2) システムコールにより 長さ maxlen を上限として読み込み、文字列として返します。 EAGAIN, EINTR などは Errno::EXXX 例外として呼出元に報告されます。
IO をノンブロッキングモードに設定し、
その後で read(2) システムコールにより
長さ maxlen を上限として読み込み、文字列として返します。
EAGAIN, EINTR などは Errno::EXXX 例外として呼出元に報告されます。
発生した例外 がErrno::EAGAIN、 Errno::EWOULDBLOCK である場合は、
その例外オブジェクトに IO::WaitReadable が Object#extend
されます。
なお、バッファが空でない場合は、read_nonblock はバッファから読み込みます。この場合、read(2) システムコールは呼ばれません... -
IO
# sysread(maxlen , outbuf = "") -> String (24061.0) -
read(2) を用いて入力を行ない、入力されたデータを 含む文字列を返します。stdio を経由しないので gets や getc や eof? などと混用すると思わぬ動作 をすることがあります。
read(2) を用いて入力を行ない、入力されたデータを
含む文字列を返します。stdio を経由しないので gets や getc や eof? などと混用すると思わぬ動作
をすることがあります。
バイナリ読み込みメソッドとして動作します。
既に EOF に達していれば EOFError が発生します。ただし、maxlen に 0 が指定されている場合は、空文字列 "" を返します。
@param maxlen 入力のサイズを整数で指定します。
@param outbuf 出力用のバッファを文字列で指定します。IO#sysread は読み込んだデータを
... -
Kernel
. # Integer(arg , base = 0) -> Integer (24061.0) -
引数を整数 (Fixnum,Bignum) に変換した結果を返します。
引数を整数
(Fixnum,Bignum)
に変換した結果を返します。
引数が数値の場合は直接変換し(小数点以下切り落とし)、
文字列の場合は、進数を表す接頭辞を含む整数表現とみなせる文字列のみ
変換します。
数値と文字列以外のオブジェクトに対しては arg.to_int, arg.to_i を
この順に使用して変換します。
@param arg 変換対象のオブジェクトです。
@param base 基数として0か2から36の整数を指定します(引数argに文字列を指
定した場合のみ)。省略するか0を指定した場合はプリフィクスか
ら基数を... -
Kernel
. # printf(format , *arg) -> nil (24061.0) -
C 言語の printf と同じように、format に従い引数を文字列に変 換して port に出力します。
C 言語の printf と同じように、format に従い引数を文字列に変
換して port に出力します。
port を省略した場合は標準出力 $stdout に出力します。
引数を 1 つも指定しなければ何もしません。
Ruby における format 文字列の拡張については
Kernel.#sprintfの項を参照してください。
@param port 出力先になるIO のサブクラスのインスタンスです。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@raise ArgumentError port を指定したのに ... -
Kernel
. # printf(port , format , *arg) -> nil (24061.0) -
C 言語の printf と同じように、format に従い引数を文字列に変 換して port に出力します。
C 言語の printf と同じように、format に従い引数を文字列に変
換して port に出力します。
port を省略した場合は標準出力 $stdout に出力します。
引数を 1 つも指定しなければ何もしません。
Ruby における format 文字列の拡張については
Kernel.#sprintfの項を参照してください。
@param port 出力先になるIO のサブクラスのインスタンスです。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@raise ArgumentError port を指定したのに ... -
Kernel
. # set _ trace _ func(proc) -> Proc (24061.0) -
Ruby インタプリタのイベントをトレースする Proc オブジェクトとして 指定された proc を登録します。 nil を指定するとトレースがオフになります。
Ruby インタプリタのイベントをトレースする Proc オブジェクトとして
指定された proc を登録します。 nil を指定するとトレースがオフになります。
Ruby インタプリタがプログラムを実行する過程で、メソッドの呼び出しや
式の評価などのイベントが発生する度に、以下で説明する6個の引数とともに
登録された Proc オブジェクトを実行します。
標準添付の debug、tracer、
profile はこの組み込み関数を利用して実現されています。
=== ブロックパラメータの意味
渡す Proc オブジェクトのパラメータは
//emlist[][ruby]{
proc{|... -
Marshal
. # dump(obj , limit = -1) -> String (24061.0) -
obj を指定された出力先に再帰的に出力します。
obj を指定された出力先に再帰的に出力します。
ファイルに書き出せないオブジェクトをファイルに書き出そうとすると
例外 TypeError が発生します。
ファイルに書き出せないオブジェクトは以下の通りです。
* 名前のついてない Class/Module オブジェクト。(この場
合は、例外 ArgumentError が発生します。無名クラスについて
は、Module.new を参照。)
* システムがオブジェクトの状態を保持するもの。具体的には以下のイン
スタンス。Dir, File::Stat, IO とそのサブクラス
File, Socket など。... -
Marshal
. # dump(obj , port , limit = -1) -> IO (24061.0) -
obj を指定された出力先に再帰的に出力します。
obj を指定された出力先に再帰的に出力します。
ファイルに書き出せないオブジェクトをファイルに書き出そうとすると
例外 TypeError が発生します。
ファイルに書き出せないオブジェクトは以下の通りです。
* 名前のついてない Class/Module オブジェクト。(この場
合は、例外 ArgumentError が発生します。無名クラスについて
は、Module.new を参照。)
* システムがオブジェクトの状態を保持するもの。具体的には以下のイン
スタンス。Dir, File::Stat, IO とそのサブクラス
File, Socket など。... -
Math
. # acos(x) -> Float (24061.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 (24061.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 (24061.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
. # atanh(x) -> Float (24061.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
. # gamma(x) -> Float (24061.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
. # lgamma(x) -> [Float , Integer] (24061.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 (24061.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 (24061.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 (24061.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 (24061.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
. # sqrt(x) -> Float (24061.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, ... -
Module
# const _ get(name , inherit = true) -> object (24061.0) -
name で指定される名前の定数の値を取り出します。
name で指定される名前の定数の値を取り出します。
Module#const_defined? と違って Object を特別扱いすることはありません。
@param name 定数名。String か Symbol で指定します。
完全修飾名を指定しなかった場合はモジュールに定義されている
name で指定される名前の定数の値を取り出します。
@param inherit false を指定するとスーパークラスや include したモジュールで
定義された定数は対象にはなりません。
@raise NameError ... -
Process
. # groups=(gids) (24061.0) -
補助グループを設定します。
補助グループを設定します。
root だけがこのメソッドを呼ぶことができます。
@param gids 補助グループ ID の配列を指定します。補助グループ ID は整数かグループ名を表す文字列です。
@raise ArgumentError 設定する補助グループ ID の数が Process.#maxgroups の
数を越えている場合に発生します。
@raise Errno::EXXX 権限がない場合に発生します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。... -
TracePoint (24061.0)
-
Kernel.#set_trace_func と同様の機能をオブジェクト指向的な API で 提供するクラスです。
Kernel.#set_trace_func と同様の機能をオブジェクト指向的な API で
提供するクラスです。
//emlist[例:例外に関する情報を収集する][ruby]{
trace = TracePoint.new(:raise) do |tp|
p [tp.lineno, tp.event, tp.raised_exception]
end
# => #<TracePoint:0x007f786a452448>
trace.enable
# => false
0 / 0
# => [5, :raise, #<ZeroDivisionError: divided by 0... -
Array
# []=(nth , val) (24058.0) -
nth 番目の要素を val に設定します。nth が配列の範囲を越える時には配列の長さを自動的に拡張し、 拡張した領域を nil で初期化します。
nth 番目の要素を val に設定します。nth が配列の範囲を越える時には配列の長さを自動的に拡張し、
拡張した領域を nil で初期化します。
@param nth インデックスを整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる
暗黙の型変換を試みます。
@param val 設定したい要素の値を指定します。
@raise TypeError 引数 nth に整数以外の(暗黙の型変換が行えない)オブジェ
クトを指定した場合に発生します。
@raise Index... -
Kernel
$ $ @ -> [String] | nil (24055.0) -
最後に例外が発生した時のバックトレースを表す配列です。 Kernel.#raise によって設定されます。
最後に例外が発生した時のバックトレースを表す配列です。
Kernel.#raise によって設定されます。
配列の各要素はメソッドの呼び出し位置を示す文字列で形式は
"filename:line"
または
"filename:line:in `methodname'"
です。これは Kernel.#caller が返す値と同じ形式です。
$@ へ値を代入するときは、$! が nil であってはいけません。
$@ の値は、$!.backtrace の値と同じです。
また、$@ への代入は $!.set_backtrace 呼び出しと同じです。
文字列の配列でも nil で... -
RuntimeError (24055.0)
-
特定の例外クラスには該当しないエラーが起こったときに発生します。 また Kernel.#raise で例外クラスを指定しなかった場合も RuntimeError が発生します。
特定の例外クラスには該当しないエラーが起こったときに発生します。
また Kernel.#raise で例外クラスを指定しなかった場合も
RuntimeError が発生します。 -
Kernel
. # spawn(command , options={}) -> Integer (24049.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash... -
Kernel
. # spawn(env , command , options={}) -> Integer (24049.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash... -
Kernel
. # spawn(env , program , *args , options={}) -> Integer (24049.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 (24049.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
. # exec(env , program , *args , options={}) -> () (24046.0) -
引数で指定されたコマンドを実行します。
引数で指定されたコマンドを実行します。
プロセスの実行コードはそのコマンド(あるいは shell)になるので、
起動に成功した場合、このメソッドからは戻りません。
この形式では、常に shell を経由せずに実行されます。
exec(3) でコマンドを実行すると、
元々のプログラムの環境をある程度(ファイルデスクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。
=== 引数の解釈
この形式で呼び出した場合、空白や shell のメタキャラクタも
そのまま program ... -
Kernel
. # exec(program , *args , options={}) -> () (24046.0) -
引数で指定されたコマンドを実行します。
引数で指定されたコマンドを実行します。
プロセスの実行コードはそのコマンド(あるいは shell)になるので、
起動に成功した場合、このメソッドからは戻りません。
この形式では、常に shell を経由せずに実行されます。
exec(3) でコマンドを実行すると、
元々のプログラムの環境をある程度(ファイルデスクリプタなど)引き継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。
=== 引数の解釈
この形式で呼び出した場合、空白や shell のメタキャラクタも
そのまま program ... -
Array
# *(times) -> Array (24043.0) -
配列の内容を times 回 繰り返した新しい配列を作成して返します。 値はコピーされないことに注意してください。
配列の内容を times 回 繰り返した新しい配列を作成して返します。
値はコピーされないことに注意してください。
@param times 繰り返したい回数を整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによ
る暗黙の型変換を試みます。
@raise TypeError 引数に整数以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。
@raise ArgumentError 引数に負の数を指定した場合に発生します。
//emlist[例][... -
Array
# []=(range , val) (24043.0) -
Range オブジェクト range の範囲にある要素を配列 val の内容に置換します。 range の first が自身の末尾を越える時には配列の長さを自動的に拡張し、拡張した領域を nil で初期化します。
Range オブジェクト range の範囲にある要素を配列 val の内容に置換します。
range の first が自身の末尾を越える時には配列の長さを自動的に拡張し、拡張した領域を nil で初期化します。
//emlist[例][ruby]{
ary = [0, 1, 2, 3, 4, 5]
ary[0..2] = ["a", "b"]
p ary # => ["a", "b", 3, 4, 5]
ary = [0, 1, 2]
ary[5..6] = "x"
p ary # => [0, 1, 2, nil, nil, "x"]
ary = [0, 1, 2, 3, 4... -
Array
# fetch(nth) -> object (24043.0) -
nth 番目の要素を返します。
nth 番目の要素を返します。
Array#[] (nth) とは nth 番目の要素が存在しない場合の振舞いが異
なります。最初の形式では、例外 IndexError が発生します。
二番目の形式では、引数 ifnone を返します。
三番目の形式では、ブロックを評価した結果を返します。
@param nth 取得したい要素のインデックスを整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる
暗黙の型変換を試みます。
@param ifnone 要素が存在しなかった場合に返すべき値を指定します。
@ra... -
Array
# fetch(nth) {|nth| . . . } -> object (24043.0) -
nth 番目の要素を返します。
nth 番目の要素を返します。
Array#[] (nth) とは nth 番目の要素が存在しない場合の振舞いが異
なります。最初の形式では、例外 IndexError が発生します。
二番目の形式では、引数 ifnone を返します。
三番目の形式では、ブロックを評価した結果を返します。
@param nth 取得したい要素のインデックスを整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる
暗黙の型変換を試みます。
@param ifnone 要素が存在しなかった場合に返すべき値を指定します。
@ra... -
Array
# fetch(nth , ifnone) -> object (24043.0) -
nth 番目の要素を返します。
nth 番目の要素を返します。
Array#[] (nth) とは nth 番目の要素が存在しない場合の振舞いが異
なります。最初の形式では、例外 IndexError が発生します。
二番目の形式では、引数 ifnone を返します。
三番目の形式では、ブロックを評価した結果を返します。
@param nth 取得したい要素のインデックスを整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる
暗黙の型変換を試みます。
@param ifnone 要素が存在しなかった場合に返すべき値を指定します。
@ra... -
Array
# first(n) -> Array (24043.0) -
先頭の n 要素を配列で返します。n は 0 以上でなければなりません。
先頭の n 要素を配列で返します。n は 0 以上でなければなりません。
@param n 取得したい要素の個数を整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。
@raise TypeError 引数に整数以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。
@raise ArgumentError n が負値の場合発生します。
//emlist[例][ruby]{
ary = [0, 1, 2]
p ary.first(0... -
Array
# flatten!(lv = nil) -> self | nil (24043.0) -
flatten は自身を再帰的に平坦化した配列を生成して返します。flatten! は 自身を再帰的かつ破壊的に平坦化し、平坦化が行われた場合は self をそうでない 場合は nil を返します。 lv が指定された場合、lv の深さまで再帰的に平坦化します。
flatten は自身を再帰的に平坦化した配列を生成して返します。flatten! は
自身を再帰的かつ破壊的に平坦化し、平坦化が行われた場合は self をそうでない
場合は nil を返します。
lv が指定された場合、lv の深さまで再帰的に平坦化します。
@param lv 平坦化の再帰の深さを整数で指定します。nil を指定した場合、再
帰の深さの制限無しに平坦化します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。
@raise TypeError 引数に整数以外の(... -
Array
# flatten(lv = nil) -> Array (24043.0) -
flatten は自身を再帰的に平坦化した配列を生成して返します。flatten! は 自身を再帰的かつ破壊的に平坦化し、平坦化が行われた場合は self をそうでない 場合は nil を返します。 lv が指定された場合、lv の深さまで再帰的に平坦化します。
flatten は自身を再帰的に平坦化した配列を生成して返します。flatten! は
自身を再帰的かつ破壊的に平坦化し、平坦化が行われた場合は self をそうでない
場合は nil を返します。
lv が指定された場合、lv の深さまで再帰的に平坦化します。
@param lv 平坦化の再帰の深さを整数で指定します。nil を指定した場合、再
帰の深さの制限無しに平坦化します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。
@raise TypeError 引数に整数以外の(... -
Array
# join(sep = $ , ) -> String (24043.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
# last(n) -> Array (24043.0) -
末尾の n 要素を配列で返します。n は 0 以上でなければなりません。
末尾の n 要素を配列で返します。n は 0 以上でなければなりません。
@param n 取得したい要素の個数を整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。
@raise TypeError 引数に整数以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。
@raise ArgumentError n が負値の場合発生します。
//emlist[例][ruby]{
ary = [0, 1, 2]
p ary.last(0)... -
Array
# sample -> object | nil (24043.0) -
配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個) ランダムに選んで返します。
配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個)
ランダムに選んで返します。
重複したインデックスは選択されません。そのため、自身がユニークな配列の
場合は返り値もユニークな配列になります。
配列が空の場合、無引数の場合は nil を、個数を指定した場合は空配列を返します。
srand()が有効です。
@param n 取得する要素の数を指定します。自身の要素数(self.length)以上の
値を指定した場合は要素数と同じ数の配列を返します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
... -
Array
# sample(n) -> Array (24043.0) -
配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個) ランダムに選んで返します。
配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個)
ランダムに選んで返します。
重複したインデックスは選択されません。そのため、自身がユニークな配列の
場合は返り値もユニークな配列になります。
配列が空の場合、無引数の場合は nil を、個数を指定した場合は空配列を返します。
srand()が有効です。
@param n 取得する要素の数を指定します。自身の要素数(self.length)以上の
値を指定した場合は要素数と同じ数の配列を返します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
... -
Array
# sample(n , random: Random) -> Array (24043.0) -
配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個) ランダムに選んで返します。
配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個)
ランダムに選んで返します。
重複したインデックスは選択されません。そのため、自身がユニークな配列の
場合は返り値もユニークな配列になります。
配列が空の場合、無引数の場合は nil を、個数を指定した場合は空配列を返します。
srand()が有効です。
@param n 取得する要素の数を指定します。自身の要素数(self.length)以上の
値を指定した場合は要素数と同じ数の配列を返します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
... -
Array
# sample(random: Random) -> object | nil (24043.0) -
配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個) ランダムに選んで返します。
配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個)
ランダムに選んで返します。
重複したインデックスは選択されません。そのため、自身がユニークな配列の
場合は返り値もユニークな配列になります。
配列が空の場合、無引数の場合は nil を、個数を指定した場合は空配列を返します。
srand()が有効です。
@param n 取得する要素の数を指定します。自身の要素数(self.length)以上の
値を指定した場合は要素数と同じ数の配列を返します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
... -
Array
# shift -> object | nil (24043.0) -
配列の先頭の要素を取り除いてそれを返します。 引数を指定した場合はその個数だけ取り除き、それを配列で返します。
配列の先頭の要素を取り除いてそれを返します。
引数を指定した場合はその個数だけ取り除き、それを配列で返します。
空配列の場合、n が指定されていない場合は nil を、
指定されている場合は空配列を返します。
また、n が自身の要素数より少ない場合はその要素数の配列を
返します。どちらの場合も自身は空配列となります。
返す値と副作用の両方を利用して、個数を指定して配列を 2 分する簡単な方法として使えます。
@param n 自身から取り除きたい要素の個数を非負整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
... -
Array
# shift(n) -> Array (24043.0) -
配列の先頭の要素を取り除いてそれを返します。 引数を指定した場合はその個数だけ取り除き、それを配列で返します。
配列の先頭の要素を取り除いてそれを返します。
引数を指定した場合はその個数だけ取り除き、それを配列で返します。
空配列の場合、n が指定されていない場合は nil を、
指定されている場合は空配列を返します。
また、n が自身の要素数より少ない場合はその要素数の配列を
返します。どちらの場合も自身は空配列となります。
返す値と副作用の両方を利用して、個数を指定して配列を 2 分する簡単な方法として使えます。
@param n 自身から取り除きたい要素の個数を非負整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
... -
Dir
# fileno -> Integer (24043.0) -
self に関連づけられたファイル記述子を表す整数を返します。
self に関連づけられたファイル記述子を表す整数を返します。
//emlist[例][ruby]{
Dir.open("..") { |d| d.fileno } # => 8
//}
本メソッドでは POSIX 2008 で定義されている dirfd() 関数を使用します。
@raise NotImplementedError Windows などの dirfd() 関数が存在しないプラッ
トフォームで発生します。
@raise IOError 既に自身が close している場合に発生します。
@see IO#fileno -
Dir
# read -> String | nil (24043.0) -
ディレクトリストリームから次の要素を読み出して返します。最後の要素 まで読み出していれば nil を返します。
ディレクトリストリームから次の要素を読み出して返します。最後の要素
まで読み出していれば nil を返します。
@raise Errno::EXXX ディレクトリの読み出しに失敗した場合に発生します。
@raise IOError 既に自身が close している場合に発生します。
//emlist[例][ruby]{
require 'tmpdir'
Dir.mktmpdir do |tmpdir|
File.open("#{tmpdir}/test1.txt", "w") { |f| f.puts("test1") }
File.open("#{tmpdir}/test2... -
Encoding
:: Converter # convert(source _ string) -> String (24043.0) -
与えられた文字列を変換して、変換できた結果を返します。 引数の末尾の文字がバイト列の途中で終わっている場合、そのバイト列は変換器内に取り置かれます。 変換を終了させるには Encoding::Converter#finish を呼びます。
与えられた文字列を変換して、変換できた結果を返します。
引数の末尾の文字がバイト列の途中で終わっている場合、そのバイト列は変換器内に取り置かれます。
変換を終了させるには Encoding::Converter#finish を呼びます。
Encoding::Converter を用いると、文字列の一部または全部を渡して変換を行うことができます。よって、不正なバイトを意識せずにストリームから読み出した文字列を変換したいときには Encoding::Converter が適します。
なお、Encoding::Converter#convert では、これらの例外を捕獲しても、例外を起こしたと... -
Exception
# cause -> Exception | nil (24043.0) -
self の前の例外(self が rescue 節や ensure 節の中で発生した例外の場合、 その前に発生していた元々の例外)を返します。存在しない場合は nil を返し ます。
self の前の例外(self が rescue 節や ensure 節の中で発生した例外の場合、
その前に発生していた元々の例外)を返します。存在しない場合は nil を返し
ます。
//emlist[例][ruby]{
begin
begin
raise "inner"
rescue
raise "outer"
end
rescue
p $! # => #<RuntimeError: outer>
p $!.cause # => #<RuntimeError: inner>
end
//} -
Exception
# exception -> self (24043.0) -
引数を指定しない場合は self を返します。引数を指定した場合 自身のコピー を生成し Exception#message 属性を error_message にして返します。
引数を指定しない場合は self を返します。引数を指定した場合 自身のコピー
を生成し Exception#message 属性を error_message にして返します。
Kernel.#raise は、実質的に、例外オブジェクトの exception
メソッドの呼び出しです。
@param error_message エラーメッセージを表す文字列を指定します。
//emlist[例][ruby]{
begin
# ... # 何か処理
rescue => e
raise e.exception("an error occurs during hogeho... -
Exception
# exception(error _ message) -> Exception (24043.0) -
引数を指定しない場合は self を返します。引数を指定した場合 自身のコピー を生成し Exception#message 属性を error_message にして返します。
引数を指定しない場合は self を返します。引数を指定した場合 自身のコピー
を生成し Exception#message 属性を error_message にして返します。
Kernel.#raise は、実質的に、例外オブジェクトの exception
メソッドの呼び出しです。
@param error_message エラーメッセージを表す文字列を指定します。
//emlist[例][ruby]{
begin
# ... # 何か処理
rescue => e
raise e.exception("an error occurs during hogeho... -
Exception
# set _ backtrace(errinfo) -> nil | String | [String] (24043.0) -
バックトレース情報に errinfo を設定し、設定されたバックトレース 情報を返します。
バックトレース情報に errinfo を設定し、設定されたバックトレース
情報を返します。
@param errinfo nil、String あるいは String の配列のいずれかを指定します。
//emlist[例][ruby]{
begin
begin
raise "inner"
rescue
raise "outer"
end
rescue
$!.backtrace # => ["/path/to/test.rb:5:in `rescue in <main>'", "/path/to/test.rb:2:in `<main>'"]
$!.se... -
File
# atime -> Time (24043.0) -
最終アクセス時刻を Time オブジェクトとして返します。
最終アクセス時刻を Time オブジェクトとして返します。
@raise IOError 自身が close されている場合に発生します。
@raise Errno::EXXX ファイルの時刻の取得に失敗した場合に発生します。
//emlist[例:][ruby]{
IO.write("testfile", "test")
File.open("testfile") { |f| f.atime } # => 2017-12-21 22:58:17 +0900
//}
@see File#lstat, File#ctime, File#mtime, File#birthtime -
File
# chmod(mode) -> 0 (24043.0) -
ファイルのモードを指定された mode に変更します。
ファイルのモードを指定された mode に変更します。
モードの変更に成功した場合は 0 を返します。失敗した場合は例外 Errno::EXXX が発生し
ます。
@param mode chmod(2) と同様に整数で指定します。
@raise IOError 自身が close されている場合に発生します。
@raise Errno::EXXX 失敗した場合に発生します。
//emlist[例][ruby]{
f = File.new("out", "w");
f.chmod(0644) #=> 0
//} -
File
# chown(owner , group) -> 0 (24043.0) -
ファイルのオーナーとグループを変更します。
ファイルのオーナーとグループを変更します。
適切な権限があればファイルのオーナーとグループを変更できます。
所有者の変更に成功した場合は 0 を返します。変更に失敗した場合は
例外 Errno::EXXX が発生します。
@param owner chown(2) と同様に数値で指定します。nil または -1 を指定することで、オーナーを現在のままにすることができます。
@param group chown(2) と同様に数値で指定します。nil または -1 を指定することで、グループを現在のままにすることができます。
@raise IOError 自身が close されている... -
File
# ctime -> Time (24043.0) -
状態が最後に変更された時刻を Time オブジェクトとして返します。状態の変更とは chmod などによるものです。
状態が最後に変更された時刻を Time オブジェクトとして返します。状態の変更とは chmod などによるものです。
@raise IOError 自身が close されている場合に発生します。
@raise Errno::EXXX ファイルの時刻の取得に失敗した場合に発生します。
//emlist[例:][ruby]{
IO.write("testfile", "test")
File.open("testfile") { |f| f.ctime } # => 2017-12-21 22:58:17 +0900
//}
@see File#lstat, File#atime, F... -
File
# flock(operation) -> 0 | false (24043.0) -
ファイルをロックします。
ファイルをロックします。
ロックを取得するまでブロックされます。
ロックの取得に成功した場合は 0 を返します。
File::LOCK_NB (ノンブロッキング) を指定すると、本来ならブロックされる場合に
ブロックされずに false を返すようになります。
@param operation ロックに対する操作の種類を示す定数を指定します。
どのような定数が利用可能かは以下を参照して下さい。
@raise IOError 自身が close されている場合に発生します。
@raise Errno::EXXX operation に不正な整数を与えた... -
File
# lstat -> File :: Stat (24043.0) -
ファイルの状態を含む File::Stat オブジェクトを生成して返します。 シンボリックリンクに関してリンクそのものの情報を返します。 lstat(2) を実装していないシステムでは、IO#statと同じです。
ファイルの状態を含む File::Stat オブジェクトを生成して返します。
シンボリックリンクに関してリンクそのものの情報を返します。
lstat(2) を実装していないシステムでは、IO#statと同じです。
@raise Errno::EXXX 失敗した場合に発生します。
@raise IOError 自身が close されている場合に発生します。
//emlist[例][ruby]{
# testlink は testfile のシンボリックリンク
File.open("testlink") do |f|
p f.lstat == File.stat("testfil... -
File
# mtime -> Time (24043.0) -
最終更新時刻を Time オブジェクトとして返します。
最終更新時刻を Time オブジェクトとして返します。
@raise IOError 自身が close されている場合に発生します。
@raise Errno::EXXX ファイルの時刻の取得に失敗した場合に発生します。
//emlist[例:][ruby]{
IO.write("testfile", "test")
File.open("testfile") { |f| f.mtime } # => 2017-12-21 22:58:17 +0900
//}
@see File#lstat, File#atime, File#ctime, File#birthtime -
File
# size -> Integer (24043.0) -
ファイルのサイズを返します。
ファイルのサイズを返します。
//emlist[例][ruby]{
File.open("/dev/null") do |f|
f.size #=> 0
end
//}
@raise IOError 自身が close されている場合に発生します。
@raise Errno::EXXX 失敗した場合に発生します。
@see File#lstat -
File
# truncate(length) -> 0 (24043.0) -
ファイルのサイズを最大 length バイトにします。
ファイルのサイズを最大 length バイトにします。
サイズの変更に成功すれば 0 を返します。失敗した場合は例外
Errno::EXXX が発生します。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX サイズの変更に失敗した場合に発生します。
//emlist[例][ruby]{
IO.write("testfile", "1234567890")
File.open("testfile", "a") do |f|
f.truncate(5) # => 0
f.size # => 5... -
File
. birthtime(filename) -> Time (24043.0) -
作成された時刻を返します。
作成された時刻を返します。
@param filename ファイル名を表す文字列か IO オブジェクトを指定します。
@raise Errno::EXXX ファイルの時刻の取得に失敗した場合に発生します。
@raise NotImplementedError Windows のような birthtime のない環境で発生します。
//emlist[例][ruby]{
File.birthtime("testfile") #=> Wed Apr 09 08:53:13 CDT 2003
//} -
File
. join(*item) -> String (24043.0) -
File::SEPARATORを間に入れて文字列を連結します。platform/DOSISH-supportで環境依存になる予定です。
File::SEPARATORを間に入れて文字列を連結します。platform/DOSISH-supportで環境依存になる予定です。
@param item 連結したいディレクトリ名やファイル名を文字列(もしくは文字列を要素に持つ配列)で与えます。
文字列AとBを連結する際に、Aの末尾の文字とBの先頭の文字がFile::SEPARATORであった場合には、
まずこれらを削除した上で改めてFile::SEPARATORを間に入れて連結します。
引数の中に配列がある場合は配列要素を再帰的に展開します。空の配列は空文字列に... -
File
. lchmod(mode , *filename) -> Integer (24043.0) -
File.chmod と同様ですが、シンボリックリンクに関してリンクそのものの モードを変更します。
File.chmod と同様ですが、シンボリックリンクに関してリンクそのものの
モードを変更します。
@param filename ファイル名を表す文字列を指定します。
@param mode chmod(2) と同様に整数で指定します。
@raise NotImplementedError lchmod(2) を実装していないシステムでこのメソッドを呼び出すと発生します。
@raise Errno::EXXX モードの変更に失敗した場合に発生します。
//emlist[例][ruby]{
IO.write("testfile", "test")
File.symlink("te... -
FileTest
. # size(file) -> Integer (24043.0) -
ファイルのサイズを返します。
ファイルのサイズを返します。
@param file ファイル名を表す文字列か IO オブジェクトを指定します。
@raise Errno::EXXX file が存在しない場合、あるいはシステムコールに失敗した場合に発生します。
@raise IOError 指定された IO オブジェクト file が既に close されていた場合に発生します。
@see FileTest.#size?, FileTest.#zero?
例:
FileTest.size('/etc/passwd') # => 5925 -
Hash
. new {|hash , key| . . . } -> Hash (24043.0) -
空の新しいハッシュを生成します。ブロックの評価結果がデフォルト値になりま す。設定したデフォルト値はHash#default_procで参照できます。
空の新しいハッシュを生成します。ブロックの評価結果がデフォルト値になりま
す。設定したデフォルト値はHash#default_procで参照できます。
値が設定されていないハッシュ要素を参照するとその都度ブロックを
実行し、その結果を返します。
ブロックにはそのハッシュとハッシュを参照したときのキーが渡されます。
@raise ArgumentError ブロックと通常引数を同時に与えると発生します。
//emlist[例][ruby]{
# ブロックではないデフォルト値は全部同一のオブジェクトなので、
# 破壊的変更によって他のキーに対応する値も変更されます。
h = Hash.new... -
IO
# close _ read -> nil (24043.0) -
読み込み用の IO を close します。主にパイプや読み書き両用に作成し た IO オブジェクトで使用します。
読み込み用の IO を close します。主にパイプや読み書き両用に作成し
た IO オブジェクトで使用します。
既に close されていた場合には単に無視されます。
@raise IOError 自身が読み込み用にオープンされていなければ発生します。
@raise Errno::EXXX close に失敗した場合に発生します。
//emlist[例][ruby]{
IO.popen("/bin/sh","r+") do |f|
f.close_read
# f.readlines # => IOError: not opened for reading
end
//}... -
IO
# close _ write -> nil (24043.0) -
書き込み用の IO を close します。
書き込み用の IO を close します。
既に close されていた場合には単に無視されます。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX close に失敗した場合に発生します。
//emlist[例][ruby]{
f = IO.popen("/bin/sh","r+") do |f|
f.close_write
# f.print "nowhere" # => IOError: not opened for writing
end
//}
@see IO#close, IO#clos... -
IO
# fcntl(cmd , arg = 0) -> Integer (24043.0) -
IOに対してシステムコール fcntl を実行します。 機能の詳細は fcntl(2) を参照してください。 fcntl(2) が返した整数を返します。
IOに対してシステムコール fcntl を実行します。
機能の詳細は fcntl(2) を参照してください。
fcntl(2) が返した整数を返します。
@param cmd IO に対するコマンドを、添付ライブラリ fcntl が提供している定数で指定します。
@param arg cmd に対する引数を整数、文字列、booleanのいずれかで指定します。
整数の時にはその値を fcntl(2) に渡します。
文字列の場合には Array#pack した構造体だとみなして渡します。
arg が nil か false の... -
IO
# flush -> self (24043.0) -
IO ポートの内部バッファをフラッシュします。
IO ポートの内部バッファをフラッシュします。
このメソッドを使ったとき、即座にメタデータを更新することは保証されません(特にWindowsで)。
即座にメタデータも更新したいときは IO#fsync を使います。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX fflush(3) が失敗した場合に発生します。
//emlist[例][ruby]{
require "tempfile"
Tempfile.open("testtmpfile") do |f|
f.print "test"
File.r... -
IO
# fsync -> 0 (24043.0) -
書き込み用の IO に対して、システムコール fsync(2) を実行します。IO#flush を行ったあと、(OSレベルで)まだディスクに 書き込まれていないメモリ上にあるデータをディスクに書き出します。
書き込み用の IO に対して、システムコール fsync(2)
を実行します。IO#flush を行ったあと、(OSレベルで)まだディスクに
書き込まれていないメモリ上にあるデータをディスクに書き出します。
成功すれば 0 を返します。
fsync(2) がサポートされていない場合は nil を返します。
@raise Errno::EXXX 失敗した場合に発生します。
@raise IOError 既に close されている場合に発生します。 -
IO
# print(*arg) -> nil (24043.0) -
引数を IO ポートに順に出力します。引数を省略した場合は、$_ を出力します。
引数を IO ポートに順に出力します。引数を省略した場合は、$_ を出力します。
@param arg Kernel.#print と同じです。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX 出力に失敗した場合に発生します。
//emlist[例][ruby]{
$stdout.print("This is ", 100, " percent.\n") # => This is 100 percent.
//}
@see Kernel.#print -
IO
# printf(format , *arg) -> nil (24043.0) -
C 言語の printf と同じように、format に従い引数 を文字列に変換して、self に出力します。
C 言語の printf と同じように、format に従い引数
を文字列に変換して、self に出力します。
第一引数に IO を指定できないこと、引数を省略できないことを除けば Kernel.#printf と同じです。
@param format Kernel.#printf と同じです。print_format を参照してください。
@param arg Kernel.#printf と同じです。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX 出力に失敗した場合に発生します。
@see Ker... -
IO
# putc(ch) -> object (24043.0) -
文字 ch を self に出力します。 引数の扱いは Kernel.#putc と同じです。詳細はこちらを参照し てください。ch を返します。
文字 ch を self に出力します。
引数の扱いは Kernel.#putc と同じです。詳細はこちらを参照し
てください。ch を返します。
@param ch 出力したい文字を、文字列か文字コード(整数)で与えます。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX 出力に失敗した場合に発生します。
//emlist[例][ruby]{
$stdout.putc "A" # => A
$stdout.putc 65 # => A
//}
@see Kernel.#putc -
IO
# puts(*obj) -> nil (24043.0) -
各 obj を self に出力し、それぞれの後に改行を出力します。 引数の扱いは Kernel.#puts と同じです。詳細はこちらを参照し てください。
各 obj を self に出力し、それぞれの後に改行を出力します。
引数の扱いは Kernel.#puts と同じです。詳細はこちらを参照し
てください。
@param obj 出力したいオブジェクトを指定します。Kernel.#puts と同じです。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX 出力に失敗した場合に発生します。
$stdout.puts("this", "is", "a", "test", [1, [nil, 3]])
#=>
thi... -
IO
# pwrite(string , offset) -> Integer (24043.0) -
stringをoffsetの位置にpwrite()システムコールを使って書き込みます。
stringをoffsetの位置にpwrite()システムコールを使って書き込みます。
IO#seekとIO#writeの組み合わせと比べて、アトミックな操作に
なるという点が優れていて、複数スレッド/プロセスから同じIOオブジェクトを
様々な位置から読み込むことを許します。
どのユーザー空間のIO層のバッファリングもバイパスします。
@param string 書き込む文字列を指定します。
@param offset ファイルポインタを変えずに書き込む位置を指定します。
@return 書き込んだバイト数を返します。
@raise Errno::EXXX シークまたは書き込みが失敗し... -
IO
# readchar -> String (24043.0) -
IO ポートから 1 文字読み込んで返します。 EOF に到達した時には EOFError が発生します。
IO ポートから 1 文字読み込んで返します。
EOF に到達した時には EOFError が発生します。
テキスト読み込みメソッドとして動作します。
IO#getc との違いは EOF での振る舞いのみです。
@raise EOFError EOF に到達した時に発生します。
@raise IOError 自身が読み込み用にオープンされていなければ発生します。
f = File.new("testfile")
p f.readchar #=> "い"
p f.readchar #=> "ろ"... -
IO
# readline(limit , chomp: false) -> String (24043.0) -
一行読み込んで、読み込みに成功した時にはその文字列を返します。 EOF に到達した時には EOFError が発生します。
一行読み込んで、読み込みに成功した時にはその文字列を返します。
EOF に到達した時には EOFError が発生します。
テキスト読み込みメソッドとして動作します。
読み込んだ文字列を変数 $_ にセットします。IO#gets との違いは EOF での振る舞いのみです。
limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
切れないように余分に読み込む場合があります。
@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード... -
IO
# readline(rs = $ / , chomp: false) -> String (24043.0) -
一行読み込んで、読み込みに成功した時にはその文字列を返します。 EOF に到達した時には EOFError が発生します。
一行読み込んで、読み込みに成功した時にはその文字列を返します。
EOF に到達した時には EOFError が発生します。
テキスト読み込みメソッドとして動作します。
読み込んだ文字列を変数 $_ にセットします。IO#gets との違いは EOF での振る舞いのみです。
limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
切れないように余分に読み込む場合があります。
@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード... -
IO
# readline(rs , limit , chomp: false) -> String (24043.0) -
一行読み込んで、読み込みに成功した時にはその文字列を返します。 EOF に到達した時には EOFError が発生します。
一行読み込んで、読み込みに成功した時にはその文字列を返します。
EOF に到達した時には EOFError が発生します。
テキスト読み込みメソッドとして動作します。
読み込んだ文字列を変数 $_ にセットします。IO#gets との違いは EOF での振る舞いのみです。
limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
切れないように余分に読み込む場合があります。
@param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします(パラグラフモード... -
IO
# readpartial(maxlen , outbuf = "") -> String (24043.0) -
IO から長さ maxlen を上限として読み込み、文字列として返します。 即座に得られるデータが存在しないときにはブロックしてデータの到着を待ちます。 即座に得られるデータが 1byte でも存在すればブロックしません。
IO から長さ maxlen を上限として読み込み、文字列として返します。
即座に得られるデータが存在しないときにはブロックしてデータの到着を待ちます。
即座に得られるデータが 1byte でも存在すればブロックしません。
バイナリ読み込みメソッドとして動作します。
既に EOF に達していれば EOFError が発生します。
ただし、maxlen に 0 が指定されている場合は、空文字列 "" を返します。
readpartial はブロックを最小限に抑えることによって、
パイプ、ソケット、端末などのストリームに対して適切に動作するよう設計されています。
readpartial が...