種類
ライブラリ
- English (23)
- ビルトイン (226)
- bigdecimal (2)
- continuation (1)
- delegate (1)
- digest (1)
- 
        irb/ cmd / load (1) 
- 
        irb/ xmp (2) 
- json (2)
- mkmf (52)
- open-uri (6)
- open3 (2)
- openssl (2)
- pathname (2)
- pp (1)
- pty (4)
- rake (3)
- 
        rubygems/ custom _ require (1) 
- socket (6)
- stringio (9)
- syslog (1)
- tempfile (5)
- timeout (2)
- tracer (1)
- un (6)
- win32ole (1)
- zlib (4)
クラス
- 
        ARGF. class (7) 
- Array (4)
- BasicObject (2)
- Binding (1)
- Complex (2)
- Exception (2)
- File (3)
- IO (39)
- 
        IRB:: ExtendCommand :: Load (1) 
- LoadError (1)
- Module (12)
- Object (14)
- 
        OpenSSL:: BN (1) 
- Proc (1)
- Socket (3)
- String (5)
- StringIO (9)
- SystemExit (1)
- Tempfile (5)
- Thread (6)
- TracePoint (1)
- Tracer (1)
- UncaughtThrowError (2)
- 
        WIN32OLE_ EVENT (1) 
- XMP (1)
- 
        Zlib:: GzipWriter (4) 
モジュール
- FileTest (1)
- Kernel (204)
- Open3 (2)
- 
        OpenSSL:: Buffering (1) 
- OpenURI (2)
- 
        OpenURI:: OpenRead (2) 
- PTY (4)
- Process (8)
- 
        Socket:: Constants (3) 
- Syslog (1)
- Timeout (2)
- URI (2)
キーワード
- 
        $ ! (1) 
- 
        $ & (1) 
- 
        $ & # 39; (1) 
- 
        $ -F (1) 
- 
        $ -I (1) 
- 
        $ -p (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) 
- 
        $ ARGV (1) 
- 
        $ CHILD _ STATUS (1) 
- 
        $ DEFAULT _ INPUT (1) 
- 
        $ DEFAULT _ OUTPUT (1) 
- 
        $ ERROR _ INFO (1) 
- 
        $ ERROR _ POSITION (1) 
- 
        $ FIELD _ SEPARATOR (1) 
- 
        $ FS (1) 
- 
        $ INPUT _ LINE _ NUMBER (1) 
- 
        $ INPUT _ RECORD _ SEPARATOR (1) 
- 
        $ LAST _ MATCH _ INFO (1) 
- 
        $ LAST _ PAREN _ MATCH (1) 
- 
        $ LAST _ READ _ LINE (1) 
- 
        $ LOAD _ PATH (1) 
- 
        $ MATCH (1) 
- 
        $ NR (1) 
- 
        $ OFS (1) 
- 
        $ OUTPUT _ FIELD _ SEPARATOR (1) 
- 
        $ OUTPUT _ RECORD _ SEPARATOR (1) 
- 
        $ PID (1) 
- 
        $ POSTMATCH (1) 
- 
        $ PREMATCH (1) 
- 
        $ PROCESS _ ID (1) 
- 
        $ PROGRAM _ NAME (1) 
- 
        $ RS (1) 
- 
        $ ` (1) 
- 
        $ stdin (1) 
- 
        $ stdout (1) 
- 
        $ topdir (1) 
- 
        $ ~ (1) 
- % (1)
- 
        AI_ V4MAPPED _ CFG (2) 
- ARGF (1)
- BigDecimal (2)
- Complex (3)
- Continuation (1)
- DATA (1)
- DelegateClass (1)
- Digest (1)
- Float (1)
- Integer (1)
- 
        NEWS for Ruby 2. 4 . 0 (1) 
- 
        NEWS for Ruby 2. 5 . 0 (1) 
- 
        NEWS for Ruby 2. 7 . 0 (1) 
- 
        NEWS for Ruby 3. 0 . 0 (1) 
- 
        NEWS for Ruby 3. 1 . 0 (1) 
- Pathname (2)
- Proc (1)
- Rational (1)
- Rubyの起動 (1)
- 
        SCRIPT_ LINES _ _ (1) 
- 
        SO_ ATTACH _ FILTER (2) 
- 
        SO_ DETACH _ FILTER (2) 
- TracePoint (1)
- Win32ネイティブ版Rubyの互換性問題 (1)
- 
        _ _ callee _ _ (1) 
- 
        _ _ method _ _ (1) 
- abort (2)
- 
        add_ filter (1) 
- 
        add_ trace _ func (1) 
- ancestors (1)
- 
        at_ exit (1) 
- autoload (2)
- autoload? (1)
- bigdecimal (1)
- binding (1)
- binread (1)
- binwrite (1)
- caller (3)
- 
        caller_ locations (2) 
- catch (2)
- 
        cc_ command (1) 
- 
        check_ signedness (2) 
- 
        check_ sizeof (2) 
- chomp (1)
- chop (1)
- class (1)
- 
        class_ eval (2) 
- 
        const_ defined? (1) 
- constants (2)
- 
        convertible_ int (2) 
- cp (1)
- create (2)
- 
        create_ makefile (1) 
- 
        create_ tmpsrc (1) 
- 
        defined_ class (1) 
- 
        depend_ rules (1) 
- desc (1)
- 
        drb/ extservm (1) 
- 
        egrep_ cpp (2) 
- eval (3)
- exec (4)
- execute (1)
- exit (2)
- exit! (1)
- fail (3)
- 
        find_ executable (1) 
- 
        find_ header (1) 
- 
        find_ library (2) 
- 
        find_ type (2) 
- 
        for_ fd (1) 
- foreach (2)
- fork (2)
- format (1)
- freeze (1)
- getpty (2)
- gets (4)
- 
        global_ variables (1) 
- gsub (3)
- 
        have_ header (2) 
- 
        have_ macro (2) 
- 
        have_ struct _ member (2) 
- 
        have_ type (2) 
- help (1)
- hex (1)
- httpd (1)
- identical? (1)
- import (1)
- include (1)
- inspect (1)
- install (1)
- 
        install_ files (1) 
- 
        instance_ eval (2) 
- 
        instance_ variables (1) 
- irb (1)
- 
        irb/ xmp (1) 
- j (1)
- kill (2)
- libpathflag (1)
- 
        link_ command (1) 
- load (1)
- 
        local_ variables (1) 
- log (1)
- loop (2)
- method (1)
- mkdir (1)
- 
        module_ eval (2) 
- namespace (1)
- new (6)
- oct (1)
- open (14)
- 
        open_ uri (2) 
- p (1)
- path (1)
- popen (14)
- popen3 (2)
- pp (2)
- 
        pretty_ print (2) 
- print (6)
- printf (7)
- proc (1)
- 
        public_ instance _ method (1) 
- putc (4)
- puts (5)
- raise (4)
- 
        rb_ exec _ end _ proc (1) 
- 
        rb_ load (1) 
- read (3)
- readline (1)
- readlines (4)
- rect (1)
- rectangular (1)
- 
        remove_ const (1) 
- reopen (5)
- require (1)
- 
        require_ relative (1) 
- rmdir (1)
- 
        ruby 1. 6 feature (1) 
- 
        ruby 1. 8 . 2 feature (1) 
- 
        ruby 1. 8 . 4 feature (1) 
- 
        ruby 1. 9 feature (1) 
- sample (4)
- select (2)
- send (2)
- 
        set_ trace _ func (2) 
- sleep (2)
- sprintf (1)
- sprintf フォーマット (1)
- srand (2)
- status (1)
- sub (2)
- sysopen (1)
- system (4)
- tag (1)
- terminate (1)
- test (2)
- timeout (2)
- 
        to_ a (1) 
- 
        to_ ary (1) 
- 
        to_ f (1) 
- 
        to_ i (1) 
- 
        to_ int (1) 
- 
        to_ str (1) 
- 
        trace_ var (3) 
- trap (2)
- 
        try_ compile (2) 
- 
        try_ constant (2) 
- 
        try_ cpp (2) 
- 
        try_ do (2) 
- 
        try_ link (2) 
- 
        try_ run (2) 
- 
        try_ static _ assert (2) 
- 
        try_ type (2) 
- 
        untrace_ var (1) 
- value (1)
- warn (1)
- 
        webrick/ https (1) 
- 
        webrick/ httpservlet (1) 
- 
        with_ werror (2) 
- write (2)
- xmp (1)
- xpopen (2)
- xsystem (1)
- このマニュアルのヘルプ (1)
- クラス/メソッドの定義 (1)
- セキュリティモデル (1)
- 制御構造 (1)
- 変数と定数 (1)
- 手続きオブジェクトの挙動の詳細 (1)
- 環境変数 (1)
- 終了処理 (1)
検索結果
先頭5件
- 
      終了処理 (9169.0)
- 
      
      
      終了処理 Ruby はスクリプトの終端に達した場合や捕捉していない例外が発生した場 合に終了します(関数 Kernel.#exit や Kernel.#abort 、メインスレッドに対する Thread.kill などは SystemExit 例外を発生させます)。終了時には以下 の処理が順に実行されます。 終了処理
 Ruby はスクリプトの終端に達した場合や捕捉していない例外が発生した場
 合に終了します(関数 Kernel.#exit や Kernel.#abort
 、メインスレッドに対する Thread.kill などは
 SystemExit 例外を発生させます)。終了時には以下
 の処理が順に実行されます。
 (1) すべてのスレッドを Thread.kill する。
 (1) Ruby の擬似シグナル SIGEXIT のハンドラが登録されていればそれを実
 行する(Kernel.#trap を参照)。
 (1) d:spec/control#END ブロック(END { ...
- 
      手続きオブジェクトの挙動の詳細 (9163.0)
- 
      
      
      手続きオブジェクトの挙動の詳細 * def * should_use_next * block * lambda_proc * orphan 手続きオブジェクトの挙動の詳細
 * def
 * should_use_next
 * block
 * lambda_proc
 * orphan
 ===[a:def] 手続きオブジェクトとは
 手続きオブジェクトとはブロックをコンテキスト(ローカル変数のスコープやスタックフレーム)と
 ともにオブジェクトにしたものです。Proc クラスのインスタンスとして実現されています。
 ブロック内では、新たなスコープが導入されるとともに、外側のローカル変数を参照できます。
 Proc オブジェクトがローカル変数のスコープを保持していることは以下の例で変数 var を
 参照できていることからわかりま...
- 
      このマニュアルのヘルプ (9109.0)
- 
      
      
      このマニュアルのヘルプ === 記号の説明 このマニュアルのヘルプ
 === 記号の説明
 : size -> Integer の「-> Integer」って何?
 size メソッドは整数を返すという意味です。
 : Kernel.#require の .# って何?
 「.#」はモジュール関数であることを表します。「Kernel.#require」は
 「Kernel のモジュール関数である require 」という意味です。
 : String#size の # って何?
 「#」はインスタンスメソッドであることを表します。
 : Dir.chdir の . って何?
 「.」はクラスメソッドであることを表します。
 :...
- 
      TracePoint# defined _ class -> Class | module (9091.0) 
- 
      
      
      メソッドを定義したクラスかモジュールを返します。 メソッドを定義したクラスかモジュールを返します。
 //emlist[例][ruby]{
 class C; def foo; end; end
 trace = TracePoint.new(:call) do |tp|
 p tp.defined_class # => C
 end.enable do
 C.new.foo
 end
 //}
 メソッドがモジュールで定義されていた場合も(include に関係なく)モジュー
 ルを返します。
 //emlist[例][ruby]{
 module M; def foo; end; end
 class C; include M; end;
 trac...
- 
      Process. abort -> () (9049.0) 
- 
      
      
      関数 Kernel.#abort と同じです。 関数 Kernel.#abort と同じです。
 @param message 終了時のメッセージを文字列で指定します。
- 
      Process. abort(message) -> () (9049.0) 
- 
      
      
      関数 Kernel.#abort と同じです。 関数 Kernel.#abort と同じです。
 @param message 終了時のメッセージを文字列で指定します。
- 
      Process. exit!(status = false) -> () (9049.0) 
- 
      
      
      関数 Kernel.#exit! と同じです。 関数 Kernel.#exit! と同じです。
 @param status 終了ステータスを boolean か整数で指定します。true の場合は成功を、false は失敗を意味します。
 @see _exit(2)
- 
      Process. exit(status = true) -> () (9049.0) 
- 
      
      
      プロセスを終了します。関数 Kernel.#exit と同じです。 プロセスを終了します。関数 Kernel.#exit と同じです。
 @param status 終了ステータスを boolean か整数で指定します。true の場合は成功を、false は失敗を意味します。
 @see exit(3)
- 
      Process. fork -> Integer | nil (9049.0) 
- 
      
      
      子プロセスを生成します。関数 Kernel.#fork と同じです。 子プロセスを生成します。関数 Kernel.#fork と同じです。
 @raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
 @see fork(2)
- 
      Process. fork { . . . } -> Integer | nil (9049.0) 
- 
      
      
      子プロセスを生成します。関数 Kernel.#fork と同じです。 子プロセスを生成します。関数 Kernel.#fork と同じです。
 @raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
 @see fork(2)
- 
      環境変数 (9037.0)
- 
      
      
      環境変数 Rubyインタプリタは以下の環境変数を参照します。 環境変数
 Rubyインタプリタは以下の環境変数を参照します。
 : RUBYOPT
 Rubyインタプリタにデフォルトで渡すオプションを指定します。
 指定できないオプションを指定した場合、例外が発生します。
 //emlist{
 $ RUBYOPT=-y ruby -e ""
 ruby: invalid switch in RUBYOPT: -y (RuntimeError)
 //}
 sh系
 //emlist{
 RUBYOPT='-Ke -rkconv'
 export RUBYOPT
 //}
 csh系
 //emlist{
 setenv RU...
- 
      Win32ネイティブ版Rubyの互換性問題 (9019.0)
- 
      
      
      Win32ネイティブ版Rubyの互換性問題 platform/Win32-nativeRubyは、できる限りUnix版と同等の動作をするように 意図して作られていますが、 OS自体の制限などにより、いくつかの非互換性があります。また、実装上の制限・ バグもいくつか残っているようです。 Win32ネイティブ版Rubyの互換性問題
 platform/Win32-nativeRubyは、できる限りUnix版と同等の動作をするように
 意図して作られていますが、
 OS自体の制限などにより、いくつかの非互換性があります。また、実装上の制限・
 バグもいくつか残っているようです。
 注意: このドキュメントは現状では不充分です。気づいたことのあるひとは
 どんどん書き足してください。
 == プロセスの扱い
 最も重要な違いとして、fork が動作しないことがあげられます。Unix向けに書かれている
 デーモン系のアプリケーションが動かないのはこれが原因であることが多いでしょう。
 == ...
- 
      ruby 1. 6 feature (2305.0) 
- 
      
      
      ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。 ruby 1.6 feature
 ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン
 になります。
 ((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
 == 1.6.8 (2002-12-24) -> stable-snapshot
 : 2003-01-22: errno
 EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
 ていま...
- 
      String# %(args) -> String (2035.0) 
- 
      
      
      printf と同じ規則に従って args をフォーマットします。 printf と同じ規則に従って args をフォーマットします。
 args が配列であれば Kernel.#sprintf(self, *args) と同じです。
 それ以外の場合は Kernel.#sprintf(self, args) と同じです。
 @param args フォーマットする値、もしくはその配列
 @return フォーマットされた文字列
 //emlist[例][ruby]{
 p "i = %d" % 10 # => "i = 10"
 p "i = %x" % 10 # => "i = a"
 p "i = %o" % 10...
- 
      Thread# add _ trace _ func(pr) -> Proc (637.0) 
- 
      
      
      スレッドにトレース用ハンドラを追加します。 スレッドにトレース用ハンドラを追加します。
 追加したハンドラを返します。
 @param pr トレースハンドラ(Proc オブジェクト)
 //emlist[例][ruby]{
 th = Thread.new do
 class Trace
 end
 43.to_s
 end
 th.add_trace_func lambda {|*arg| p arg }
 th.join
 # => ["line", "example.rb", 4, nil, #<Binding:0x00007f98e107d0d8>, nil]
 # => ["c-call", "example.rb", 4, ...
- 
      Thread# set _ trace _ func(pr) -> Proc | nil (637.0) 
- 
      
      
      スレッドにトレース用ハンドラを設定します。 スレッドにトレース用ハンドラを設定します。
 nil を渡すとトレースを解除します。
 設定したハンドラを返します。
 //emlist[例][ruby]{
 th = Thread.new do
 class Trace
 end
 2.to_s
 Thread.current.set_trace_func nil
 3.to_s
 end
 th.set_trace_func lambda {|*arg| p arg }
 th.join
 # => ["line", "example.rb", 2, nil, #<Binding:0x00007fc8de87cb08>, nil]
 #...
- 
      ruby 1. 9 feature (523.0) 
- 
      
      
      ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。 ruby 1.9 feature
 ruby version 1.9.0 は開発版です。
 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。
 1.9.1 以降は安定版です。
 バグ修正がメインになります。
 記号について(特に重要なものは大文字(主観))
 * カテゴリ
 * [ruby]: ruby インタプリタの変更
 * [api]: 拡張ライブラリ API
 * [lib]: ライブラリ
 * [parser]: 文法の変更
 * [regexp]: 正規表現の機能拡張
 * [marshal]: Marshal ファイルのフォーマット変更
 * ...
- 
      Binding# eval(expr , fname = _ _ FILE _ _ , lineno = 1) -> object (403.0) 
- 
      
      
      自身をコンテキストとし文字列 expr を Ruby プログラムとして評価しその結果を返します。 組み込み関数 Kernel.#eval を使って eval(expr, self, fname, lineno) とするのと同じです。 自身をコンテキストとし文字列 expr を
 Ruby プログラムとして評価しその結果を返します。
 組み込み関数 Kernel.#eval を使って
 eval(expr, self, fname, lineno) とするのと同じです。
 @param expr 評価したい式を文字列で与えます。
 @param fname ファイル名を文字列で与えます。式 expr が fname というファイル名にあるかのように実行されます。
 @param lineno 行番号を整数で与えます。式 expr の先頭行の行番号が lineno であるかのように実行されます。
 //emlist[例][rub...
- 
      String# to _ i(base = 10) -> Integer (379.0) 
- 
      
      
      文字列を 10 進数表現された整数であると解釈して、整数に変換します。 文字列を 10 進数表現された整数であると解釈して、整数に変換します。
 //emlist[例][ruby]{
 p " 10".to_i # => 10
 p "+10".to_i # => 10
 p "-10".to_i # => -10
 p "010".to_i # => 10
 p "-010".to_i # => -10
 //}
 整数とみなせない文字があればそこまでを変換対象とします。
 変換対象が空文字列であれば 0 を返します。
 //emlist[例][ruby]{
 p "0x11".to_i # => 0
 p "".to_i # =>...
- 
      BasicObject# instance _ eval(expr , filename = "(eval)" , lineno = 1) -> object (373.0) 
- 
      
      
      オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。 オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを
 評価してその結果を返します。
 オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行するということです。
 また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。
 ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。
 メソッド定義の中で instance_eval でメソッドを定義した場...
- 
      Module# class _ eval(expr , fname = "(eval)" , lineno = 1) -> object (373.0) 
- 
      
      
      モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。 モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを
 評価してその結果を返します。
 モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるということです。
 つまり、そのモジュールの定義式の中にあるかのように実行されます。
 ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
 定数とクラス変数のスコープは、文字列が与えられた場合とブロックが与えられた場合で挙動が異なります。
 文字列が与えられた場合には、定数とクラス変数のスコープは自身のモジュール定義式内と同じスコープ...
- 
      Module# module _ eval(expr , fname = "(eval)" , lineno = 1) -> object (373.0) 
- 
      
      
      モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。 モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを
 評価してその結果を返します。
 モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるということです。
 つまり、そのモジュールの定義式の中にあるかのように実行されます。
 ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
 定数とクラス変数のスコープは、文字列が与えられた場合とブロックが与えられた場合で挙動が異なります。
 文字列が与えられた場合には、定数とクラス変数のスコープは自身のモジュール定義式内と同じスコープ...
- 
      Thread# raise(error _ type , message , traceback) -> () (373.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>
 [...
- 
      Timeout. # timeout(sec , exception _ class = nil) {|i| . . . } -> object (373.0) 
- 
      
      
      ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。 ブロックを sec 秒の期限付きで実行します。
 ブロックの実行時間が制限を過ぎたときは例外
 Timeout::Error が発生します。
 exception_class を指定した場合には Timeout::Error の代わりに
 その例外が発生します。
 ブロックパラメータ i は sec がはいります。
 また sec が 0 もしくは nil のときは制限時間なしで
 ブロックを実行します。
 @param sec タイムアウトする時間を秒数で指定します.
 @param exception_class タイムアウトした時、発生させる例外を指定します.
 @param message エラー...
- 
      Timeout. # timeout(sec , exception _ class , message) {|i| . . . } -> object (373.0) 
- 
      
      
      ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。 ブロックを sec 秒の期限付きで実行します。
 ブロックの実行時間が制限を過ぎたときは例外
 Timeout::Error が発生します。
 exception_class を指定した場合には Timeout::Error の代わりに
 その例外が発生します。
 ブロックパラメータ i は sec がはいります。
 また sec が 0 もしくは nil のときは制限時間なしで
 ブロックを実行します。
 @param sec タイムアウトする時間を秒数で指定します.
 @param exception_class タイムアウトした時、発生させる例外を指定します.
 @param message エラー...
- 
      NEWS for Ruby 2. 7 . 0 (361.0) 
- 
      
      
      NEWS for Ruby 2.7.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。 NEWS for Ruby 2.7.0
 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
 それぞれのエントリーは参照情報があるため短いです。
 十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
 == 2.6.0 以降の変更
 === 言語仕様の変更
 ==== パターンマッチ
 * パターンマッチが実験的機能として導入されました。 14912
 //emlist[][ruby]{
 case [0, [1, 2, 3]]
 in [a, [b...
- 
      IO. for _ fd(fd , mode = "r" , **opts) -> IO (355.0) 
- 
      
      
      オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。 オープン済みのファイルディスクリプタ fd に対する新しい
 IO オブジェクトを生成して返します。
 IO.open にブロックが与えられた場合、IO オブジェクトを生成しそれを引数としてブロックを
 実行します。ブロックの終了とともに fd はクローズされます。ブロックの結果を返します。
 IO.new, IO.for_fd はブロックを受け付けません。
 === キーワード引数
 このメソッドは以下のキーワード引数を利用できます。
 * :mode mode引数と同じ意味です
 * :external_encoding 外部エンコーディング。"-" はデフォルト外部エンコーディングの
 ...
- 
      IO. new(fd , mode = "r" , **opts) -> IO (355.0) 
- 
      
      
      オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。 オープン済みのファイルディスクリプタ fd に対する新しい
 IO オブジェクトを生成して返します。
 IO.open にブロックが与えられた場合、IO オブジェクトを生成しそれを引数としてブロックを
 実行します。ブロックの終了とともに fd はクローズされます。ブロックの結果を返します。
 IO.new, IO.for_fd はブロックを受け付けません。
 === キーワード引数
 このメソッドは以下のキーワード引数を利用できます。
 * :mode mode引数と同じ意味です
 * :external_encoding 外部エンコーディング。"-" はデフォルト外部エンコーディングの
 ...
- 
      NEWS for Ruby 3. 0 . 0 (343.0) 
- 
      
      
      NEWS for Ruby 3.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。 NEWS for Ruby 3.0.0
 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
 それぞれのエントリーは参照情報があるため短いです。
 十分な情報と共に書かれた全ての変更のリストはリンク先を参照してください。
 == 言語仕様の変更
 * キーワード引数が位置引数から分離されるようになります。
 Ruby 2.7 では非推奨の警告を表示していましたが、ArgumentError を出力するか、異なる振る舞いをします。
 14183
 * 単一の rest 引数とキーワードを受け入れる Proc は、autosplat の...
- 
      File. new(path , mode = "r" , perm = 0666) -> File (337.0) 
- 
      
      
      path で指定されるファイルをオープンし、File オブジェクトを生成して 返します。 path で指定されるファイルをオープンし、File オブジェクトを生成して
 返します。
 path が整数の場合はファイルディスクリプタとして扱い、それに対応する
 File オブジェクトを生成して返します。IO.open と同じです。
 ブロックを指定して呼び出した場合は、File オブジェクトを引数として
 ブロックを実行します。ブロックの実行が終了すると、ファイルは自動的に
 クローズされます。ブロックの実行結果を返します。
 @param path ファイルを文字列で指定します。整数を指定した場合はファイルディスクリプタとして扱います。
 @param mode モードを文字列か定数の論理...
- 
      IO. binwrite(path , string , offset=nil) -> Integer (337.0) 
- 
      
      
      path で指定されるファイルを開き、string を書き込み、 閉じます。 path で指定されるファイルを開き、string を書き込み、
 閉じます。
 ファイルを開くときの mode が "wb:ASCII-8BIT" で、バイナリモードが有効
 である点以外は IO.write と同じです。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドを実行し、コマンドの出力を標準出力に書き込みます。
 offset を指定するとその位置までシークします。
 offset を指定しないと、書き込みの末尾でファイルを
 切り捨てます。
 @param path ファイル名文字列
 @param string 書き込む文字列
 @param...
- 
      ruby 1. 8 . 2 feature (325.0) 
- 
      
      
      ruby 1.8.2 feature ruby 1.8.2 での ruby 1.8.1 からの変更点です。 ruby 1.8.2 feature
 ruby 1.8.2 での ruby 1.8.1 からの変更点です。
 掲載方針
 *バグ修正の影響も含めて動作が変わるものを収録する。
 *単にバグを直しただけのものは収録しない。
 *ライブラリへの単なる定数の追加は収録しない。
 以下は各変更点に付けるべきタグです。
 *カテゴリ
 * [ruby]: ruby インタプリタの変更
 * [api]: 拡張ライブラリ API
 * [lib]: ライブラリ
 *レベル
 * [bug]: バグ修正
 * [new]: 追加されたクラス/メソッドなど
 * [compat]: 変更されたクラス/...
- 
      ARGF. class # gets(limit , chomp: false) -> String | nil (319.0) 
- 
      
      
      ARGFの現在位置から一行ずつ文字列として読み込みます。EOF に到達した時に は nil を返します。 ARGFの現在位置から一行ずつ文字列として読み込みます。EOF に到達した時に
 は nil を返します。
 @param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切
 りなしとみなします。空文字列 "" を指定すると連続する改行を行
 の区切りとみなします(パラグラフモード)。
 @param limit 最大の読み込みバイト数
 @param chomp true を指定すると各行の末尾から "\n", "\r", または "\r\n" を取り除きます。
 例:
 # $ echo "line1\nline2\nline...
- 
      ARGF. class # gets(rs = $ / , chomp: false) -> String | nil (319.0) 
- 
      
      
      ARGFの現在位置から一行ずつ文字列として読み込みます。EOF に到達した時に は nil を返します。 ARGFの現在位置から一行ずつ文字列として読み込みます。EOF に到達した時に
 は nil を返します。
 @param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切
 りなしとみなします。空文字列 "" を指定すると連続する改行を行
 の区切りとみなします(パラグラフモード)。
 @param limit 最大の読み込みバイト数
 @param chomp true を指定すると各行の末尾から "\n", "\r", または "\r\n" を取り除きます。
 例:
 # $ echo "line1\nline2\nline...
- 
      ARGF. class # gets(rs , limit , chomp: false) -> String | nil (319.0) 
- 
      
      
      ARGFの現在位置から一行ずつ文字列として読み込みます。EOF に到達した時に は nil を返します。 ARGFの現在位置から一行ずつ文字列として読み込みます。EOF に到達した時に
 は nil を返します。
 @param rs 行の区切りを文字列で指定します。rs に nil を指定すると行区切
 りなしとみなします。空文字列 "" を指定すると連続する改行を行
 の区切りとみなします(パラグラフモード)。
 @param limit 最大の読み込みバイト数
 @param chomp true を指定すると各行の末尾から "\n", "\r", または "\r\n" を取り除きます。
 例:
 # $ echo "line1\nline2\nline...
- 
      IO. binread(path , length = nil , offset = 0) -> String | nil (319.0) 
- 
      
      
      path で指定したファイルを open し、offset の所まで seek し、 length バイト読み込みます。 path で指定したファイルを open し、offset の所まで seek し、
 length バイト読み込みます。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
 length を省略するとファイルの末尾まで読み込みます。
 ファイルを開くときの mode は "rb:ASCII-8BIT" です。
 //emlist[例][ruby]{
 IO.write("testfile", "This is line one\nThis is line two\nThis is line three\nAnd so on......
- 
      IO. foreach(path , rs = $ / , chomp: false) -> Enumerator (319.0) 
- 
      
      
      path で指定されたファイルの各行を引数としてブロックを繰り返し実行します。 path のオープンに成功すれば nil を返します。 path で指定されたファイルの各行を引数としてブロックを繰り返し実行します。
 path のオープンに成功すれば nil を返します。
 ブロックが与えられなかった場合は、path で指定されたファイルの各行を繰り返す
 Enumerator オブジェクトを生成して返します。
 テキスト読み込みメソッドとして動作します。
 path が空ファイルの場合、何もせずに nil を返します。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
 @param path ファイル名を表す文字列か "|コマンド名" を指定します。
 @pa...
- 
      IO. foreach(path , rs = $ / , chomp: false) {|line| . . . } -> nil (319.0) 
- 
      
      
      path で指定されたファイルの各行を引数としてブロックを繰り返し実行します。 path のオープンに成功すれば nil を返します。 path で指定されたファイルの各行を引数としてブロックを繰り返し実行します。
 path のオープンに成功すれば nil を返します。
 ブロックが与えられなかった場合は、path で指定されたファイルの各行を繰り返す
 Enumerator オブジェクトを生成して返します。
 テキスト読み込みメソッドとして動作します。
 path が空ファイルの場合、何もせずに nil を返します。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
 @param path ファイル名を表す文字列か "|コマンド名" を指定します。
 @pa...
- 
      IO. read(path , **opt) -> String | nil (319.0) 
- 
      
      
      path で指定されたファイルを offset 位置から length バイト分読み込んで返します。 path で指定されたファイルを offset 位置から
 length バイト分読み込んで返します。
 既に EOF に達している場合は nil を返します。ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。例えば、IO.read(空ファイル) は "" を返します。
 引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
 動作します。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
 @param path ファイル名を...
- 
      IO. read(path , length = nil , **opt) -> String | nil (319.0) 
- 
      
      
      path で指定されたファイルを offset 位置から length バイト分読み込んで返します。 path で指定されたファイルを offset 位置から
 length バイト分読み込んで返します。
 既に EOF に達している場合は nil を返します。ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。例えば、IO.read(空ファイル) は "" を返します。
 引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
 動作します。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
 @param path ファイル名を...
- 
      IO. read(path , length = nil , offset = 0 , **opt) -> String | nil (319.0) 
- 
      
      
      path で指定されたファイルを offset 位置から length バイト分読み込んで返します。 path で指定されたファイルを offset 位置から
 length バイト分読み込んで返します。
 既に EOF に達している場合は nil を返します。ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。例えば、IO.read(空ファイル) は "" を返します。
 引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
 動作します。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
 @param path ファイル名を...
- 
      IO. readlines(path , limit , chomp: false , opts={}) -> [String] (319.0) 
- 
      
      
      path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。 path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
 テキスト読み込みメソッドとして動作します。
 limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
 切れないように余分に読み込む場合があります。
 opts でファイルを開くときのオプションを指定します。エンコーディングなど
 を指定できます。
 File.open と同様なのでそちらを参照してください。
 @param path ファイル名を表す文字列か "|コ...
- 
      IO. readlines(path , rs = $ / , chomp: false , opts={}) -> [String] (319.0) 
- 
      
      
      path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。 path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
 テキスト読み込みメソッドとして動作します。
 limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
 切れないように余分に読み込む場合があります。
 opts でファイルを開くときのオプションを指定します。エンコーディングなど
 を指定できます。
 File.open と同様なのでそちらを参照してください。
 @param path ファイル名を表す文字列か "|コ...
- 
      IO. readlines(path , rs , limit , chomp: false , opts={}) -> [String] (319.0) 
- 
      
      
      path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。 path で指定されたファイルを全て読み込んで、その各行を要素としてもつ配列を返します。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
 テキスト読み込みメソッドとして動作します。
 limit で最大読み込みバイト数を指定します。ただしマルチバイト文字が途中で
 切れないように余分に読み込む場合があります。
 opts でファイルを開くときのオプションを指定します。エンコーディングなど
 を指定できます。
 File.open と同様なのでそちらを参照してください。
 @param path ファイル名を表す文字列か "|コ...
- 
      IO. select(reads , writes = [] , excepts = [] , timeout = nil) -> [[IO]] | nil (319.0) 
- 
      
      
      select(2) を実行します。 select(2) を実行します。
 与えられた入力/出力/例外待ちの IO オブジェクトの中から準備ができたものを
 それぞれ配列にして、配列の配列として返します。
 タイムアウトした時には nil を返します。
 @param reads 入力待ちする IO オブジェクトの配列を渡します。
 @param writes 出力待ちする IO オブジェクトの配列を渡します。
 @param excepts 例外待ちする IO オブジェクトの配列を渡します。
 @param timeout タイムアウトまでの時間を表す数値または nil を指定します。数値で指定したときの単位は秒です。nil を...
- 
      IO. write(path , string , **opts) -> Integer (319.0) 
- 
      
      
      path で指定されるファイルを開き、string を書き込み、 閉じます。 path で指定されるファイルを開き、string を書き込み、
 閉じます。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドを実行し、コマンドの出力を標準出力に書き込みます。
 offset を指定するとその位置までシークします。
 offset を指定しないと、書き込みの末尾でファイルを
 切り捨てます。
 キーワード引数はファイルを開くときに使われ、エンコーディングなどを指定することができます。
 詳しくは IO.open を見てください。
 @param path ファイル名文字列
 @param string 書き込む文字列
 @param of...
- 
      IO. write(path , string , offset=nil , **opts) -> Integer (319.0) 
- 
      
      
      path で指定されるファイルを開き、string を書き込み、 閉じます。 path で指定されるファイルを開き、string を書き込み、
 閉じます。
 Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドを実行し、コマンドの出力を標準出力に書き込みます。
 offset を指定するとその位置までシークします。
 offset を指定しないと、書き込みの末尾でファイルを
 切り捨てます。
 キーワード引数はファイルを開くときに使われ、エンコーディングなどを指定することができます。
 詳しくは IO.open を見てください。
 @param path ファイル名文字列
 @param string 書き込む文字列
 @param of...
- 
      IRB:: ExtendCommand :: Load # execute(file _ name , priv = nil) -> nil (319.0) 
- 
      
      
      ファイル path を Ruby スクリプトとみなし、現在の irb インタプリタ上で実 行します。 ファイル path を Ruby スクリプトとみなし、現在の irb インタプリタ上で実
 行します。
 Kernel.#load と異なり、path の内容を irb で一行ずつタイプしたかの
 ように、irb 上で一行ずつ評価されます。
 @param file_name ファイル名を文字列で指定します。
 @param priv 真を指定した場合は実行は内部的に生成される無名モジュール上
 で行われ、グローバルな名前空間を汚染しません。
 @raise LoadError 読み込みに失敗した場合に発生します。
- 
      Syslog. # log(priority , format , *arg) -> self (319.0) 
- 
      
      
      syslogにメッセージを書き込みます。 syslogにメッセージを書き込みます。
 priority は優先度を示す定数(Syslog::Constants参照)です。
 また、facility(Syslog::Constants参照)を論理和で指定す
 ることで open で指定した facility を切替えることもできます。
 format 以降は Kernel.#sprintf と同じ形式の引数を指定します。
 但し、syslog(3) のように format に %m は使用できません。
 メッセージに改行を含める必要はありません。
 @param priority priority は優先度を示す定数を指定します。
 ...
- 
      Tracer. add _ filter(proc) (319.0) 
- 
      
      
      トレース出力するかどうかを決定するフィルタを追加します。 何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。 与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば トレースは出力されます。 トレース出力するかどうかを決定するフィルタを追加します。
 何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。
 与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば
 トレースは出力されます。
 フィルタは複数追加でき、
 そのうち一つでも偽を返すとトレースの出力は抑制されます。
 @param proc トレース出力するかどうかを決定する手続きオブジェクトを指定します。
 通常、true か falseを返す必要があります。
 フィルタ手続きは引数として event, file, line, id, binding, klass の...
- 
      void rb_ load(VALUE fname , int wrap) (319.0) 
- 
      
      
      参考: 21651 参考: 21651
 組込み関数 Kernel.#load の低レベルインタフェースです。Rubyスクリ
 プトが格納されたファイルfname をロードします。
 引数wrapが、non-zeroなら無名のモジュールを生成して、ロー
 ドした内容をそのモジュールに閉じ込めます。閉じ込めるのは
 * 定数
 * クラス、モジュール
 * トップレベルメソッド
 です。グローバル変数の変更などは閉じ込められません。
- 
      ruby 1. 8 . 4 feature (289.0) 
- 
      
      
      ruby 1.8.4 feature ruby 1.8.4 での ruby 1.8.3 からの変更点です。 ruby 1.8.4 feature
 ruby 1.8.4 での ruby 1.8.3 からの変更点です。
 掲載方針
 *バグ修正の影響も含めて動作が変わるものを収録する。
 *単にバグを直しただけのものは収録しない。
 *ライブラリへの単なる定数の追加は収録しない。
 以下は各変更点に付けるべきタグです。
 記号について(特に重要なものは大文字(主観))
 # * カテゴリ
 # * [ruby]: ruby インタプリタの変更
 # * [api]: 拡張ライブラリ API
 # * [lib]: ライブラリ
 * レベル
 * [bug]: バグ修正
 * [new]: 追加され...
- 
      String# to _ f -> Float (271.0) 
- 
      
      
      文字列を 10 進数表現と解釈して、浮動小数点数 Float に変換します。 文字列を 10 進数表現と解釈して、浮動小数点数 Float に変換します。
 浮動小数点数とみなせなくなるところまでを変換対象とします。
 途中に変換できないような文字列がある場合、それより先の文字列は無視されます。
 //emlist[][ruby]{
 p "-10".to_f # => -10.0
 p "10e2".to_f # => 1000.0
 p "1e-2".to_f # => 0.01
 p ".1".to_f # => 0.1
 p "1_0_0".to_f # => 100.0 # 数値リテラルと同じように区切りに _ を使える
 p " \n10".to_f ...
- 
      String# oct -> Integer (253.0) 
- 
      
      
      文字列を 8 進文字列であると解釈して、整数に変換します。 文字列を 8 進文字列であると解釈して、整数に変換します。
 //emlist[例][ruby]{
 p "10".oct # => 8
 p "010".oct # => 8
 p "8".oct # => 0
 //}
 oct は文字列の接頭辞 ("0", "0b", "0B", "0x", "0X") に応じて
 8 進以外の変換も行います。
 //emlist[例][ruby]{
 p "0b10".oct # => 2
 p "10".oct # => 8
 p "010".oct # => 8
 p "0x10".oct # => 16
 //}
 整数とみなせない文字があれば...
- 
      String# hex -> Integer (199.0) 
- 
      
      
      文字列に 16 進数で数値が表現されていると解釈して整数に変換します。 接頭辞 "0x", "0X" とアンダースコアは無視されます。 文字列が [_0-9a-fA-F] 以外の文字を含むときはその文字以降を無視します。 文字列に 16 進数で数値が表現されていると解釈して整数に変換します。
 接頭辞 "0x", "0X" とアンダースコアは無視されます。
 文字列が [_0-9a-fA-F] 以外の文字を含むときはその文字以降を無視します。
 self が空文字列のときは 0 を返します。
 //emlist[例][ruby]{
 p "10".hex # => 16
 p "ff".hex # => 255
 p "0x10".hex # => 16
 p "-0x10".hex # => -16
 p "xyz".hex # => 0
 p "10z".hex # => 16
 p "1_0".h...
- 
      Object# freeze -> self (145.0) 
- 
      
      
      オブジェクトを凍結(内容の変更を禁止)します。 オブジェクトを凍結(内容の変更を禁止)します。
 凍結されたオブジェクトの変更は
 例外 FrozenError を発生させます。
 いったん凍結されたオブジェクトを元に戻す方法はありません。
 凍結されるのはオブジェクトであり、変数ではありません。代入などで変数の指す
 オブジェクトが変化してしまうことは freeze では防げません。 freeze が防ぐのは、
 `破壊的な操作' と呼ばれるもの一般です。変数への参照自体を凍結したい
 場合は、グローバル変数なら Kernel.#trace_var が使えます。
 @return self を返します。
 //emlist[][ruby]{
 a1...
- 
      StringIO. new(string = & # 39;& # 39; , mode = & # 39;r+& # 39;) -> StringIO (145.0) 
- 
      
      
      StringIO オブジェクトを生成して返します。 StringIO オブジェクトを生成して返します。
 与えられた string がフリーズされている場合には、mode はデフォルトでは読み取りのみに設定されます。
 ブロックを与えた場合は生成した StringIO オブジェクトを引数としてブロックを評価してその結果を返します。
 @param string 生成される StringIO のデータを文字列で指定します。
 この文字列はバッファとして使われます。StringIO#write などによって、
 string 自身も書き換えられます。
 @param mode Kernel.#op...
- 
      Module# autoload(const _ name , feature) -> nil (139.0) 
- 
      
      
      定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。 定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。
 const_name が autoload 設定されていて、まだ定義されてない(ロードされていない)ときは、
 autoload する対象を置き換えます。
 const_name が(autoloadではなく)既に定義されているときは何もしません。
 @param const_name String または Symbol で指定します。
 なお、const_name には、"::" 演算子を含めることはできません。
 つまり、self の直下に定...
- 
      NEWS for Ruby 2. 5 . 0 (127.0) 
- 
      
      
      NEWS for Ruby 2.5.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。 ...加 12063
 * FrozenError
 * 新しい例外クラスです 13224
 === 標準添付ライブラリの更新
 * bigdecimal
 * BigDecimal 1.3.4 に更新
 * BigDecimal::VERSION を追加
 * 非推奨(1.4.0で削除予定)
 * BigDecimal.new
 * BigDecimal.ver
 * BigDecimal#cl...
- 
      Object# class -> Class (127.0) 
- 
      
      
      レシーバのクラスを返します。 レシーバのクラスを返します。
 //emlist[][ruby]{
 p "ruby".class #=> String
 p 100.class #=> Integer
 p ARGV.class #=> Array
 p self.class #=> Object
 p Class.class #=> Class
 p Kernel.class #=> Module
 //}
 @see Class#superclass,Object#kind_of?,Object#instance_of?
- 
      FileTest. # identical?(file1 , file2) -> bool (109.0) 
- 
      
      
      file1 と file2 が同じファイルを指している時に真を返します。 そうでない場合、ファイルが存在しない場合、あるいはシステムコールに失敗した場合などには false を返します。 file1 と file2 が同じファイルを指している時に真を返します。
 そうでない場合、ファイルが存在しない場合、あるいはシステムコールに失敗した場合などには false を返します。
 ruby 1.8.3 以前ではKernel.#test(?-, file1, file2)を使ってください。
 open("a", "w") {}
 p File.identical?("a", "a") #=> true
 p File.identical?("a", "./a") #=> true
 File.link("a", "b")
 p File.identical...
- 
      Module# constants(inherit = true) -> [Symbol] (109.0) 
- 
      
      
      そのモジュール(またはクラス)で定義されている定数名の配列を返します。 そのモジュール(またはクラス)で定義されている定数名の配列を返します。
 inherit に真を指定すると
 スーパークラスやインクルードしているモジュールの定数も含みます。
 Object のサブクラスの場合、Objectやそのスーパークラスで定義されている
 定数は含まれません。 Object.constants とすると Object クラスで定義された
 定数の配列が得られます。
 得られる定数の順序は保証されません。
 @param inherit true を指定するとスーパークラスや include したモジュールで
 定義された定数が対象にはなります。false を指定し...
- 
      NEWS for Ruby 3. 1 . 0 (109.0) 
- 
      
      
      NEWS for Ruby 3.1.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。 NEWS for Ruby 3.1.0
 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
 それぞれのエントリーは参照情報があるため短いです。
 十分な情報と共に書かれた全ての変更のリストはリンク先を参照してください。
 == 言語仕様の変更
 * ブロックが他のメソッドに渡されるだけの場合は、ブロックの引数を無名にできるようになりました。 11256
 //emlist{
 def foo(&)
 bar(&)
 end
 //}
 * ピン演算子に式を書けるようになりました。 17411
 //emlist{
 Prime.each_cons...
- 
      Object# send(name , *args) -> object (109.0) 
- 
      
      
      オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。 オブジェクトのメソッド name を args を引数に
 して呼び出し、メソッドの実行結果を返します。
 ブロック付きで呼ばれたときはブロックもそのまま引き渡します。
 send が再定義された場合に備えて別名 __send__ も
 用意されており、ライブラリではこちらを使うべきです。また
 __send__ は再定義すべきではありません。
 send, __send__ は、メソッドの呼び出し制限
 にかかわらず任意のメソッドを呼び出せます。
 d:spec/def#limit も参照してください。
 public メソッドだけ呼び出せれば良い場合は
 Object#public_send を使う...
- 
      Object# send(name , *args) { . . . . } -> object (109.0) 
- 
      
      
      オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。 オブジェクトのメソッド name を args を引数に
 して呼び出し、メソッドの実行結果を返します。
 ブロック付きで呼ばれたときはブロックもそのまま引き渡します。
 send が再定義された場合に備えて別名 __send__ も
 用意されており、ライブラリではこちらを使うべきです。また
 __send__ は再定義すべきではありません。
 send, __send__ は、メソッドの呼び出し制限
 にかかわらず任意のメソッドを呼び出せます。
 d:spec/def#limit も参照してください。
 public メソッドだけ呼び出せれば良い場合は
 Object#public_send を使う...
- 
      irb (109.0)
- 
      
      
      irb は Interactive Ruby の略です。 irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。 irb は Interactive Ruby の略です。
 irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。
 === irb の使い方
 Ruby さえ知っていれば irb を使うのは簡単です。
 irb コマンドを実行すると、以下のようなプロンプトが表れます。
 $ irb
 irb(main):001:0>
 あとは Ruby の式を入力するだけで、その式が実行され、結果が表示されます。
 irb(main):001:0> 1+2
 3
 irb(main):002:0> class Foo
 irb(main):003:1> def f...
- 
      Module# ancestors -> [Class , Module] (91.0) 
- 
      
      
      クラス、モジュールのスーパークラスとインクルードしているモジュール を優先順位順に配列に格納して返します。 クラス、モジュールのスーパークラスとインクルードしているモジュール
 を優先順位順に配列に格納して返します。
 //emlist[例][ruby]{
 module Foo
 end
 class Bar
 include Foo
 end
 class Baz < Bar
 p ancestors
 p included_modules
 p superclass
 end
 # => [Baz, Bar, Foo, Object, Kernel, BasicObject]
 # => [Foo, Kernel]
 # => Bar
 //}
 @see Module#included_modules
 ...
- 
      Module# const _ defined?(name , inherit = true) -> bool (91.0) 
- 
      
      
      モジュールに name で指定される名前の定数が定義されている時真 を返します。 モジュールに name で指定される名前の定数が定義されている時真
 を返します。
 スーパークラスや include したモジュールで定義された定数を検索対象
 にするかどうかは第二引数で制御することができます。
 @param name String, Symbol で指定される定数名。
 @param inherit false を指定するとスーパークラスや include したモジュールで
 定義された定数は対象にはなりません。
 //emlist[例][ruby]{
 module Kernel
 FOO = 1
 end
 # Object は include したモジュー...
- 
      Thread# exit -> self (91.0) 
- 
      
      
      スレッドの実行を終了させます。終了時に ensure 節が実行されます。 スレッドの実行を終了させます。終了時に ensure 節が実行されます。
 ただし、スレッドは終了処理中(aborting)にはなりますが、
 直ちに終了するとは限りません。すでに終了している場合は何もしません。このメソッドにより
 終了したスレッドの Thread#value の返り値は不定です。
 自身がメインスレッドであるか最後のスレッドである場合は、プロセスを Kernel.#exit(0)
 により終了します。
 Kernel.#exit と違い例外 SystemExit を発生しません。
 th1 = Thread.new do
 begin
 sleep 10
 ...
- 
      Thread# kill -> self (91.0) 
- 
      
      
      スレッドの実行を終了させます。終了時に ensure 節が実行されます。 スレッドの実行を終了させます。終了時に ensure 節が実行されます。
 ただし、スレッドは終了処理中(aborting)にはなりますが、
 直ちに終了するとは限りません。すでに終了している場合は何もしません。このメソッドにより
 終了したスレッドの Thread#value の返り値は不定です。
 自身がメインスレッドであるか最後のスレッドである場合は、プロセスを Kernel.#exit(0)
 により終了します。
 Kernel.#exit と違い例外 SystemExit を発生しません。
 th1 = Thread.new do
 begin
 sleep 10
 ...
- 
      Thread# terminate -> self (91.0) 
- 
      
      
      スレッドの実行を終了させます。終了時に ensure 節が実行されます。 スレッドの実行を終了させます。終了時に ensure 節が実行されます。
 ただし、スレッドは終了処理中(aborting)にはなりますが、
 直ちに終了するとは限りません。すでに終了している場合は何もしません。このメソッドにより
 終了したスレッドの Thread#value の返り値は不定です。
 自身がメインスレッドであるか最後のスレッドである場合は、プロセスを Kernel.#exit(0)
 により終了します。
 Kernel.#exit と違い例外 SystemExit を発生しません。
 th1 = Thread.new do
 begin
 sleep 10
 ...
- 
      bigdecimal (91.0)
- 
      
      
      bigdecimal は浮動小数点数演算ライブラリです。 任意の精度で 10 進表現された浮動小数点数を扱えます。 bigdecimal は浮動小数点数演算ライブラリです。
 任意の精度で 10 進表現された浮動小数点数を扱えます。
 //emlist[][ruby]{
 require 'bigdecimal'
 a = BigDecimal("0.123456789123456789")
 b = BigDecimal("123456.78912345678", 40)
 print a + b # => 0.123456912580245903456789e6
 //}
 一般的な 10 進数の計算でも有用です。2 進数の浮動小数点演算には微小な誤
 差があるのに対し、BigDecimal では正確な値を得る事がで...
- 
      ARGF (73.0)
- 
      
      
      スクリプトに指定した引数 (Object::ARGV を参照) をファイル名とみなして、 それらのファイルを連結した 1 つの仮想ファイルを表すオブジェクトです。 ARGV が空なら標準入力を対象とします。 ARGV を変更すればこのオブジェクトの動作に影響します。 スクリプトに指定した引数
 (Object::ARGV を参照) をファイル名とみなして、
 それらのファイルを連結した 1 つの仮想ファイルを表すオブジェクトです。
 ARGV が空なら標準入力を対象とします。
 ARGV を変更すればこのオブジェクトの動作に影響します。
 //emlist[][ruby]{
 while line = ARGF.gets
 # do something
 end
 //}
 は、
 //emlist[][ruby]{
 while argv = ARGV.shift
 File.open(argv) {|file|
 while line = file.gets...
- 
      BasicObject# instance _ eval {|obj| . . . } -> object (73.0) 
- 
      
      
      オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。 オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを
 評価してその結果を返します。
 オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行するということです。
 また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。
 ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。
 メソッド定義の中で instance_eval でメソッドを定義した場...
- 
      Module# class _ eval {|mod| . . . } -> object (73.0) 
- 
      
      
      モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。 モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを
 評価してその結果を返します。
 モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるということです。
 つまり、そのモジュールの定義式の中にあるかのように実行されます。
 ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
 定数とクラス変数のスコープは、文字列が与えられた場合とブロックが与えられた場合で挙動が異なります。
 文字列が与えられた場合には、定数とクラス変数のスコープは自身のモジュール定義式内と同じスコープ...
- 
      Module# include(*mod) -> self (73.0) 
- 
      
      
      モジュール mod をインクルードします。 モジュール mod をインクルードします。
 @param mod Module のインスタンス( Enumerable など)を指定します。
 @raise ArgumentError 継承関係が循環してしまうような include を行った場合に発生します。
 //emlist[例][ruby]{
 module M
 end
 module M2
 include M
 end
 module M
 include M2
 end
 //}
 実行結果:
 -:3:in `append_features': cyclic include detected (ArgumentError)
 ...
- 
      Module# module _ eval {|mod| . . . } -> object (73.0) 
- 
      
      
      モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。 モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを
 評価してその結果を返します。
 モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるということです。
 つまり、そのモジュールの定義式の中にあるかのように実行されます。
 ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
 定数とクラス変数のスコープは、文字列が与えられた場合とブロックが与えられた場合で挙動が異なります。
 文字列が与えられた場合には、定数とクラス変数のスコープは自身のモジュール定義式内と同じスコープ...
- 
      NEWS for Ruby 2. 4 . 0 (73.0) 
- 
      
      
      NEWS for Ruby 2.4.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。 NEWS for Ruby 2.4.0
 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
 それぞれのエントリーは参照情報があるため短いです。
 十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
 == 2.3.0 以降の変更
 === 言語仕様の変更
 * 条件式での多重代入ができるようになりました 10617
 * Symbol#to_proc でメソッド呼び出し元での Refinements が有効になりました 9451
 * Ob...
- 
      Object# to _ a -> Array (73.0) 
- 
      
      
      オブジェクトを配列に変換した結果を返します。 デフォルトでは定義されていません。 オブジェクトを配列に変換した結果を返します。
 デフォルトでは定義されていません。
 説明のためここに記載してありますが、
 このメソッドは実際には Object クラスには定義されていません。
 必要に応じてサブクラスで定義すべきものです。
 //emlist[][ruby]{
 p( {'a'=>1}.to_a ) # [["a", 1]]
 p ['array'].to_a # ["array"]
 p nil.to_a # []
 //}
 @see Object#to_ary,Kernel.#Array
- 
      UncaughtThrowError# tag -> object (67.0) 
- 
      
      
      Kernel.#throw に指定した tag を返します。 Kernel.#throw に指定した tag を返します。
 //emlist[例:][ruby]{
 def do_complicated_things
 throw :uncaught_label
 end
 begin
 do_complicated_things
 rescue UncaughtThrowError => ex
 p ex.tag # => ":uncaught_label"
 end
 //}
- 
      UncaughtThrowError# value -> object (67.0) 
- 
      
      
      Kernel.#throw に指定した value を返します。 Kernel.#throw に指定した value を返します。
 //emlist[例][ruby]{
 def do_complicated_things
 throw :uncaught_label, "uncaught_value"
 end
 begin
 do_complicated_things
 rescue UncaughtThrowError => ex
 p ex.value # => "uncaught_value"
 end
 //}
- 
      Module# remove _ const(name) -> object (55.0) 
- 
      
      
      name で指定した定数を取り除き、その定数に設定されていた値を 返します。 name で指定した定数を取り除き、その定数に設定されていた値を
 返します。
 @param name String または Symbol を指定します。
 @return 引数で指定された定数に設定されていた値を返します。
 @raise NameError 引数で指定された定数がそのモジュールやクラスに定義されていない場合に発生します。
 //emlist[例][ruby]{
 class Foo
 FOO = 1
 p remove_const(:FOO) # => 1
 p FOO # => uninitialized constant FOO at Foo (Na...
- 
      Module. constants -> [Symbol] (55.0) 
- 
      
      
      このメソッドを呼び出した時点で参照可能な定数名の配列を返します。 このメソッドを呼び出した時点で参照可能な定数名の配列を返します。
 //emlist[例][ruby]{
 class C
 FOO = 1
 end
 p Module.constants # => [:RUBY_PLATFORM, :STDIN, ..., :C, ...]
 # 出力中に :FOO は現われない
 //}
 @see Module#constants, Kernel.#local_variables, Kernel.#global_variables, Object#instance_variables, Module#class_...
- 
      Object# instance _ variables -> [Symbol] (55.0) 
- 
      
      
      オブジェクトのインスタンス変数名をシンボルの配列として返します。 オブジェクトのインスタンス変数名をシンボルの配列として返します。
 //emlist[][ruby]{
 obj = Object.new
 obj.instance_eval { @foo, @bar = nil }
 p obj.instance_variables
 #=> [:@foo, :@bar]
 //}
 @see Object#instance_variable_get, Kernel.#local_variables, Kernel.#global_variables, Module.constants, Module#constants, Module#class_variabl...
- 
      Object# method(name) -> Method (55.0) 
- 
      
      
      オブジェクトのメソッド name をオブジェクト化した Method オブジェクトを返します。 オブジェクトのメソッド name をオブジェクト化した
 Method オブジェクトを返します。
 @param name メソッド名をSymbol またはStringで指定します。
 @raise NameError 定義されていないメソッド名を引数として与えると発生します。
 //emlist[][ruby]{
 me = -365.method(:abs)
 p me #=> #<Method: Integer#abs>
 p me.call #=> 365
 //}
 @see Module#instance_method, Method, BasicObject#__send__, Objec...
- 
      Object:: DATA -> File (55.0) 
- 
      
      
      スクリプトの __END__ プログラムの終り以降をアクセスする File オブジェクト。 スクリプトの __END__
 プログラムの終り以降をアクセスする File オブジェクト。
 d:spec/program#terminateも参照。
 ソースファイルの __END__ 以降は解析・実行の対象にならないので
 その部分にプログラムが利用するためのデータを書き込んでおくことができます。
 DATA 定数はそのデータ部分にアクセスするための File オブジェクトを保持しています。
 __END__ を含まないプログラムにおいては DATA は定義されません。
 === 注意
 * DATA.rewind で移動する読みとり位置は __END__ 直後ではなく、
 ...
- 
      Socket:: Constants :: SO _ ATTACH _ FILTER -> Integer (55.0) 
- 
      
      
      Attach socket filter。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。 Attach socket filter。
 BasicSocket#getsockopt, BasicSocket#setsockopt
 の第2引数(optname)に使用します。
 @see socket(7linux), http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=Documentation/networking/filter.txt;hb=HEAD,
 Socket::Constants::SOL_SOCKET
- 
      Socket:: Constants :: SO _ DETACH _ FILTER -> Integer (55.0) 
- 
      
      
      Detach socket filter。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。 Detach socket filter。
 BasicSocket#getsockopt, BasicSocket#setsockopt
 の第2引数(optname)に使用します。
 @see socket(7linux), http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=Documentation/networking/filter.txt;hb=HEAD,
 Socket::Constants::SOL_SOCKET
- 
      Socket:: SO _ ATTACH _ FILTER -> Integer (55.0) 
- 
      
      
      Attach socket filter。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。 Attach socket filter。
 BasicSocket#getsockopt, BasicSocket#setsockopt
 の第2引数(optname)に使用します。
 @see socket(7linux), http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=Documentation/networking/filter.txt;hb=HEAD,
 Socket::Constants::SOL_SOCKET
- 
      Socket:: SO _ DETACH _ FILTER -> Integer (55.0) 
- 
      
      
      Detach socket filter。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。 Detach socket filter。
 BasicSocket#getsockopt, BasicSocket#setsockopt
 の第2引数(optname)に使用します。
 @see socket(7linux), http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=Documentation/networking/filter.txt;hb=HEAD,
 Socket::Constants::SOL_SOCKET
- 
      SystemExit# status -> Integer (55.0) 
- 
      
      
      例外オブジェクトに保存された終了ステータスを返します。 例外オブジェクトに保存された終了ステータスを返します。
 終了ステータスは Kernel.#exit や SystemExit.new などで設定されます。
 例:
 begin
 exit 1
 rescue SystemExit => err
 p err.status # => 1
 end
 begin
 raise SystemExit.new(1, "dummy exit")
 rescue SystemExit => err
 p err.status # => 1
 end
- 
      drb/ extservm (55.0) 
- 
      
      
      DRb::ExtServManager を定義しているライブラリ。 DRb::ExtServManager を定義しているライブラリ。
 DRb::ExtServManager は drb で実現されたサービスブローカーです。
 個々のサービスは drb/extserv で定義されている
 DRb::ExtServ を用いて実装します。
 DRb::ExtServManager
 はクライアントの要求に応じて個々のサービスを
 サブプロセスとして起動し、各サービスを表す DRb::ExtServ オブジェクト
 をリモートオブジェクトとしてクライアントに渡します。
 このライブラリは簡易的なもので、あまりメンテナンスもされていないので、
 本格的な用途にはこのライブラリを参...
- 
      Continuation (37.0)
- 
      
      
      継続を表すクラスです。 継続を表すクラスです。
 Kernel.#callcc { |cont| ... } の呼び出し
 は、直前の状態(ローカル変数の定義、スタックフレーム)を cont に記憶
 してブロックを実行します。cont は、Continuation クラスのインスタ
 ンスで、Continuation#call メソッドを実行するこ
 とでいつでも記憶した状態を継続することができます。
 C 言語の setjmp()/longjmp() がわかる人は
 setjmp() == callcc {|c| }
 longjmp() == c.call
 と考えれば、わかりやすいかも知れません(ただし、callc...
- 
      Object# to _ ary -> Array (37.0) 
- 
      
      
      オブジェクトの Array への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。 オブジェクトの Array への暗黙の変換が必要なときに内部で呼ばれます。
 デフォルトでは定義されていません。
 説明のためここに記載してありますが、
 このメソッドは実際には Object クラスには定義されていません。
 必要に応じてサブクラスで定義すべきものです。
 このメソッドを定義する条件は、
 * 配列が使われるすべての場面で代置可能であるような、
 * 配列そのものとみなせるようなもの
 という厳しいものになっています。
 //emlist[][ruby]{
 class Foo
 def to_ary
 [3,4]
 end
 end
 it = Foo.new
 p([1,2...
- 
      Object# to _ int -> Integer (37.0) 
- 
      
      
      オブジェクトの Integer への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。 オブジェクトの Integer への暗黙の変換が必要なときに内部で呼ばれます。
 デフォルトでは定義されていません。
 説明のためここに記載してありますが、
 このメソッドは実際には Object クラスには定義されていません。
 必要に応じてサブクラスで定義すべきものです。
 このメソッドを定義する条件は、
 * 整数が使われるすべての場面で代置可能であるような、
 * 整数そのものとみなせるようなもの
 という厳しいものになっています。
 //emlist[][ruby]{
 class Foo
 def to_int
 1
 end
 end
 ary = [:a, :b, :c]
 p(...
- 
      Object# to _ str -> String (37.0) 
- 
      
      
      オブジェクトの String への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。 オブジェクトの String への暗黙の変換が必要なときに内部で呼ばれます。
 デフォルトでは定義されていません。
 説明のためここに記載してありますが、
 このメソッドは実際には Object クラスには定義されていません。
 必要に応じてサブクラスで定義すべきものです。
 このメソッドを定義する条件は、
 * 文字列が使われるすべての場面で代置可能であるような、
 * 文字列そのものとみなせるようなもの
 という厳しいものになっています。
 //emlist[][ruby]{
 class Foo
 def to_str
 'Edition'
 end
 end
 it = Foo.new...

 :
:![条件を削除 [x]](/images/drop-condition-icon.png)
 :3.4
:3.4