ライブラリ
- ビルトイン (98)
キーワード
- BasicObject (1)
- Bignum (1)
- Binding (1)
- CompatibilityError (1)
- Complex (1)
- ConditionVariable (2)
- Converter (1)
- ConverterNotFoundError (1)
- Dir (1)
- DomainError (1)
- E2BIG (1)
- EADDRINUSE (1)
- EADDRNOTAVAIL (1)
- EAGAIN (1)
- ECHILD (1)
- EEXIST (1)
- EFBIG (1)
- EHWPOISON (1)
- EIDRM (1)
- EILSEQ (1)
- EINPROGRESS (1)
- EINTR (1)
- EINVAL (1)
- EIO (1)
- EIPSEC (1)
- EISCONN (1)
- EISDIR (1)
- EISNAM (1)
- EKEYEXPIRED (1)
- ELIBACC (1)
- ELIBBAD (1)
- ELIBEXEC (1)
- ELIBMAX (1)
- ELIBSCN (1)
- EMEDIUMTYPE (1)
- EMFILE (1)
- EMLINK (1)
- EMSGSIZE (1)
- EMULTIHOP (1)
- ENAVAIL (1)
- ENFILE (1)
- ENOCSI (1)
- ENOLINK (1)
- ENOMEDIUM (1)
- ENOTDIR (1)
- ENOTUNIQ (1)
- ENXIO (1)
- EPIPE (1)
- EPROCLIM (1)
- EPROCUNAVAIL (1)
- EPROGMISMATCH (1)
- EPROGUNAVAIL (1)
- EREMOTEIO (1)
- ERFKILL (1)
- ERPCMISMATCH (1)
- ESPIPE (1)
- ESTRPIPE (1)
- ETIME (1)
- ETIMEDOUT (1)
- Encoding (1)
- EncodingError (1)
- Exception (1)
- Fiber (1)
- FiberError (1)
- File (1)
- Fixnum (1)
- FloatDomainError (1)
- IO (1)
- IOError (1)
- IndexError (1)
- InstructionSequence (1)
- Integer (1)
- Interrupt (1)
- InvalidByteSequenceError (1)
- Location (1)
- NilClass (1)
- NotImplementedError (1)
- Numeric (1)
- Range (1)
- Rational (1)
- RuntimeError (1)
- ScriptError (1)
- SecurityError (1)
- SignalException (1)
- SizedQueue (2)
- Stat (1)
- Status (1)
- StopIteration (1)
- String (1)
- SystemExit (1)
- Time (1)
- TracePoint (1)
- UndefinedConversionError (1)
- Yielder (1)
- ZeroDivisionError (1)
- fatal (1)
検索結果
-
Binding (60004.0)
-
ローカル変数のテーブルと self、モジュールのネストなどの情報を保 持するオブジェクトのクラスです。
ローカル変数のテーブルと self、モジュールのネストなどの情報を保
持するオブジェクトのクラスです。
組み込み関数 Kernel.#binding と Proc#binding によっ
てのみ生成され、Kernel.#eval の第 2 引数に使用します。
またトップレベルの Binding オブジェクトとして組み込み定数
Object::TOPLEVEL_BINDING が用意されています。 -
Encoding
:: InvalidByteSequenceError (51004.0) -
文字列がそのエンコーディングにおいて不正なバイト列である場合に発生 する例外。
文字列がそのエンコーディングにおいて不正なバイト列である場合に発生
する例外。
通常エンコーディング変換時に発生します。
//emlist[例][ruby]{
"\x82\xa0".force_encoding("cp932").encode("UTF-8")
#=> "あ"
"\x82\xa0".force_encoding("EUC-JP").encode("UTF-8")
#=> Encoding::InvalidByteSequenceError: "\x82" on EUC-JP
//} -
Encoding
:: UndefinedConversionError (51004.0) -
エンコーディング変換後の文字が存在しない場合に発生する例外。
エンコーディング変換後の文字が存在しない場合に発生する例外。
UTF-8 にしかない文字を EUC-JP に変換しようとした場合などに発生します。
//emlist[例][ruby]{
"\u2603".encode(Encoding::EUC_JP)
#=> Encoding::UndefinedConversionError: U+2603 from UTF-8 to EUC-JP
//}
変換が多段階でなされ、その途中で例外が生じた場合は、
例外オブジェクトが保持するエラー情報はその中間のものになります。
//emlist[例][ruby]{
ec = Encoding::Co... -
Fiber (42040.0)
-
ノンプリエンプティブな軽量スレッド(以下ファイバーと呼ぶ)を提供します。 他の言語では coroutine あるいは semicoroutine と呼ばれることもあります。 Thread と違いユーザレベルスレッドとして実装されています。
ノンプリエンプティブな軽量スレッド(以下ファイバーと呼ぶ)を提供します。
他の言語では coroutine あるいは semicoroutine と呼ばれることもあります。
Thread と違いユーザレベルスレッドとして実装されています。
Thread クラスが表すスレッドと違い、明示的に指定しない限り
ファイバーのコンテキストは切り替わりません。
またファイバーは親子関係を持ちます。Fiber#resume を呼んだファイバーが親になり
呼ばれたファイバーが子になります。親子関係を壊すような遷移(例えば
自分の親の親のファイバーへ切り替えるような処理)はできません。
例外 FiberErr... -
Numeric (42040.0)
-
数値を表す抽象クラスです。Integer や Float などの数値クラス は Numeric のサブクラスとして実装されています。
...d
//}
また、任意桁の切上げ、切捨て、四捨五入を行うメソッドは以下のように
定義できます。
//emlist[][ruby]{
class Numeric
def roundup(d=0)
x = 10**d
if self > 0
self.quo(x).ceil * x
else
self.quo(x).floor * x
end
end
def roun... -
BasicObject (42022.0)
-
特殊な用途のために意図的にほとんど何も定義されていないクラスです。 Objectクラスの親にあたります。Ruby 1.9 以降で導入されました。
...クラスから派生すべきです。
真に必要な場合にだけ BasicObject から派生してください。
=== 例
//emlist[例][ruby]{
class Proxy < BasicObject
def initialize(target)
@target = target
end
def method_missing(message, *args)
@target.__send__(message, *args... -
Bignum (42004.0)
-
Alias of Integer
Alias of Integer -
ConditionVariable (42004.0)
-
Alias of Thread::ConditionVariable
Alias of Thread::ConditionVariable -
Dir (42004.0)
-
ディレクトリの操作を行うためのクラスです。
ディレクトリの操作を行うためのクラスです。 -
Encoding (42004.0)
-
文字エンコーディング(文字符号化方式)のクラスです。Rubyの多言語対応(M17N)機能において利用されます。
文字エンコーディング(文字符号化方式)のクラスです。Rubyの多言語対応(M17N)機能において利用されます。
例えば文字列オブジェクトは、文字列のバイト表現の他にそのバイト表現がどのエンコーディングによるものであるかも併せて保持しています。この情報は String#encoding により取得できます。 Encoding オブジェクトを返すメソッドにはこの他に IO#internal_encoding, IO#external_encoding などがあります。
@see spec/m17n -
Encoding
:: CompatibilityError (42004.0) -
2つのエンコーディング間に互換性がない場合に発生する例外。
2つのエンコーディング間に互換性がない場合に発生する例外。
エンコーディングの異なる文字列を連結しようとした場合などに発生します。
//emlist[例][ruby]{
"あ".encode("EUC-JP") + "あ".encode("UTF-8")
#=> Encoding::CompatibilityError: incompatible character encodings: EUC-JP and UTF-8
//} -
EncodingError (42004.0)
-
エンコーディング関連の例外の基底クラス。
エンコーディング関連の例外の基底クラス。 -
Enumerator
:: Yielder (42004.0) -
Enumerator.new で使われるクラスで、直接使うものではありません。
Enumerator.new で使われるクラスで、直接使うものではありません。 -
Errno
:: E2BIG (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EADDRINUSE (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EADDRNOTAVAIL (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EAGAIN (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ECHILD (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EEXIST (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EFBIG (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EHWPOISON (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EIDRM (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EILSEQ (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EINPROGRESS (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EINTR (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EINVAL (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EIO (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EIPSEC (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EISCONN (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EISDIR (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EISNAM (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EKEYEXPIRED (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ELIBACC (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ELIBBAD (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ELIBEXEC (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ELIBMAX (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ELIBSCN (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EMEDIUMTYPE (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EMFILE (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EMLINK (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EMSGSIZE (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EMULTIHOP (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ENAVAIL (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ENFILE (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ENOCSI (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ENOLINK (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ENOMEDIUM (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ENOTDIR (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ENOTUNIQ (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ENXIO (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EPIPE (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EPROCLIM (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EPROCUNAVAIL (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EPROGMISMATCH (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EPROGUNAVAIL (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EREMOTEIO (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ERFKILL (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ERPCMISMATCH (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ESPIPE (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ESTRPIPE (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ETIME (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: ETIMEDOUT (42004.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Exception (42004.0)
-
全ての例外の祖先のクラスです。
全ての例外の祖先のクラスです。 -
FiberError (42004.0)
-
Fiber に関するエラーが起きると発生します。
Fiber に関するエラーが起きると発生します。 -
File (42004.0)
-
ファイルアクセスのためのクラスです。
ファイルアクセスのためのクラスです。
通常 Kernel.#open または File.open を使って生成します。
IO クラスがインクルードしている File::Constants は File クラスに関係する定数を
格納したモジュールです。
また File::Stat は stat 構造体( stat(2) 参照)を表すクラスです。 -
Fixnum (42004.0)
-
Alias of Integer
Alias of Integer -
FloatDomainError (42004.0)
-
正負の無限大や NaN (Not a Number) を Bignum に変換しようとしたり、 NaN との比較を行ったときに発生します。
正負の無限大や NaN (Not a Number) を Bignum に変換しようとしたり、
NaN との比較を行ったときに発生します。 -
IO (42004.0)
-
基本的な入出力機能のためのクラスです。
基本的な入出力機能のためのクラスです。
File::Constants は、File から IO へ移動しました。
===[a:m17n] 多言語化と IO のエンコーディング
IO オブジェクトはエンコーディングを持ちます。
エンコーディングの影響を受けるメソッドと受けないメソッドがあります。
影響を受けるメソッドでは、IO のエンコーディングに従い読み込まれた文字列のエンコーディングが決定されます。
また IO のエンコーディングを適切に設定することにより、読み込み時・書き込み時に文字列のエンコーディングを
変換させることもできます。
==== エンコーディングの影響を受けるメ... -
IOError (42004.0)
-
入出力でエラーが起きると発生します。
入出力でエラーが起きると発生します。 -
IndexError (42004.0)
-
添字が範囲外のときに発生します。
添字が範囲外のときに発生します。 -
Integer (42004.0)
-
整数クラスです。
整数クラスです。
整数オブジェクトに特異メソッドを追加する事はできません。追加した場合、
TypeError が発生します。
2.4.0 から Fixnum, Bignum は Integerに統合されました。
2.4.0 からはどちらも Integer クラスのエイリアスとなっています。 -
Interrupt (42004.0)
-
SIGINT シグナルを捕捉していないときに SIGINT シグナルを受け取ると発生します。 SIGINT 以外のシグナルを受信したときに発生する例外については SignalException を参照してください。
SIGINT シグナルを捕捉していないときに
SIGINT シグナルを受け取ると発生します。
SIGINT 以外のシグナルを受信したときに発生する例外については
SignalException を参照してください。
使用例
=begin
#SIGINTを捕捉したい場合
Signal.trap('INT'){
print "\nINTを捕捉した。\n"
exit 1
}
=end
begin
begin
print "z"
$stdout.flush
sleep(1)
end while true
... -
Math
:: DomainError (42004.0) -
数学関数(module Math のモジュール関数)で与えた引数が定義域 に含まれていない場合に発生します。
数学関数(module Math のモジュール関数)で与えた引数が定義域
に含まれていない場合に発生します。 -
NilClass (42004.0)
-
nil のクラス。 nil は NilClass クラスの唯一のインスタンスです。 nil は false オブジェクトとともに偽を表し、 その他の全てのオブジェクトは真です。
...nil のクラス。
nil は NilClass クラスの唯一のインスタンスです。
nil は false オブジェクトとともに偽を表し、
その他の全てのオブジェクトは真です。... -
NotImplementedError (42004.0)
-
現在のプラットフォームで実装されていない機能が呼び出されたときに発生します。
現在のプラットフォームで実装されていない機能が呼び出されたときに発生します。
例えばfsyncやforkのシステムコールに依存するメソッドが呼び出されたとき、OSまたはRubyの実行環境がそれらのシステムコールをサポートしていない場合、この例外が発生します。
forkがNotImplementedErrorを発生させる場合respond_to?(:fork)はfalseを返すことに注意してください。 -
Rational (42004.0)
-
有理数を扱うクラスです。
有理数を扱うクラスです。
「1/3」のような有理数を扱う事ができます。Integer や Float
と同様に Rational.new ではなく、 Kernel.#Rational を使用して
Rational オブジェクトを作成します。
//emlist[例][ruby]{
Rational(1, 3) # => (1/3)
Rational('1/3') # => (1/3)
Rational('0.33') # => (33/100)
Rational.new(1, 3) # => NoMethodError
//}
Rational オブジェク... -
RubyVM
:: InstructionSequence (42004.0) -
Ruby の Virtual Machine のコンパイル済みの命令シーケンスを表すクラスです。
Ruby の Virtual Machine のコンパイル済みの命令シーケンスを表すクラスです。
Method、Proc オブジェクトや Ruby のソースコードを表す文字列
から VM の命令シーケンスを得る事ができます。また、
RubyVM::InstructionSequence オブジェクトを元に命令シーケンスを読みやす
い文字列に変換する事もできます。Ruby の命令シーケンスコンパイラの設定を
扱う必要がありますが、Ruby の VM がどのように働くかを知るのに有用です。
VM の命令シーケンスの一覧はRuby のソースコード中の insns.def から参照で
きます。
... -
RuntimeError (42004.0)
-
特定の例外クラスには該当しないエラーが起こったときに発生します。 また Kernel.#raise で例外クラスを指定しなかった場合も RuntimeError が発生します。
特定の例外クラスには該当しないエラーが起こったときに発生します。
また Kernel.#raise で例外クラスを指定しなかった場合も
RuntimeError が発生します。 -
ScriptError (42004.0)
-
スクリプトのエラーを表す例外クラスです。
スクリプトのエラーを表す例外クラスです。
以下の例外クラスのスーパークラスです。
* LoadError
* NotImplementedError
* SyntaxError
これらの例外が発生したときは Ruby スクリプト自体に
バグがある可能性が高いと考えられます。 -
SecurityError (42004.0)
-
セキュリティ上の問題が起きたときに発生します。
セキュリティ上の問題が起きたときに発生します。
spec/safelevelも参照してください。 -
SignalException (42004.0)
-
捕捉していないシグナルを受け取ったときに発生します。
捕捉していないシグナルを受け取ったときに発生します。
実際に発生したシグナル名は、
Exception#message から
「"SIG" + シグナル名」という形で得られます。
デフォルトの状態では、
以下のシグナルが SignalException を発生させます。
* SIGALRM
* SIGHUP
* SIGINT (※ただし以下参照)
* SIGQUIT
* SIGUSR1
* SIGUSR2
* SIGTERM
なお、SIGINT シグナルを受けた場合は SignalException の下位クラスである
Interrupt が発生します。 -
SizedQueue (42004.0)
-
Alias of Thread::SizedQueue
Alias of Thread::SizedQueue -
StopIteration (42004.0)
-
イテレーションを止めるときに発生する例外です。
イテレーションを止めるときに発生する例外です。 -
String (42004.0)
-
文字列のクラスです。 ヌル文字を含む任意のバイト列を扱うことができます。 文字列の長さにはメモリ容量以外の制限はありません。
文字列のクラスです。
ヌル文字を含む任意のバイト列を扱うことができます。
文字列の長さにはメモリ容量以外の制限はありません。
文字列は通常、文字列リテラルを使って生成します。
以下に文字列リテラルの例をいくつか示します。
//emlist[文字列リテラルの例][ruby]{
'str\\ing' # シングルクオート文字列 (エスケープシーケンスがほぼ無効)
"string\n" # ダブルクオート文字列 (エスケープシーケンスがすべて有効)
%q(str\\ing) # 「%q」文字列 (エスケープシーケンスがほぼ無効、デリミタが変えられる)
%Q(string\n) # 「%Q... -
SystemExit (42004.0)
-
Ruby インタプリタを終了させるときに発生します。
Ruby インタプリタを終了させるときに発生します。 -
Thread
:: Backtrace :: Location (42004.0) -
Ruby のフレームを表すクラスです。
...例1の実行結果:
caller_locations.rb:2:in `a'
caller_locations.rb:5:in `b'
caller_locations.rb:8:in `c'
//emlist[例2][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
p... -
Thread
:: ConditionVariable (42004.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
...が空になった場合、
あるいは満タンになった場合に Condition Variable を使って wait しています。
require 'thread'
class TinyQueue
def initialize(max=2)
@max = max
@full = ConditionVariable.new
@empty = ConditionVariable.new
@mutex = Mut... -
Thread
:: SizedQueue (42004.0) -
サイズの最大値を指定できる Thread::Queue です。
サイズの最大値を指定できる Thread::Queue です。
=== 例
283 より。q をサイズ 1 の SizedQueue オブジェクトに
することによって、入力される行と出力される行が同じ順序になります。
q = [] にすると入力と違った順序で行が出力されます。
require 'thread'
q = SizedQueue.new(1)
th = Thread.start {
while line = q.pop
print line
end
}
while l = gets
q.push(l)
end
... -
Time (42004.0)
-
時刻を表すクラスです。
時刻を表すクラスです。
Time.now は現在の時刻を返します。
File.mtime などが返すファイルのタイムスタンプは Time
オブジェクトです。
Time オブジェクトは時刻を起算時からの経過秒数で保持しています。
起算時は協定世界時(UTC、もしくはその旧称から GMT とも表記されます) の
1970年1月1日午前0時です。なお、うるう秒を勘定するかどうかはシステムに
よります。
Time オブジェクトが格納可能な時刻の範囲は環境によって異なっていましたが、
Ruby 1.9.2 からは OS の制限の影響を受けません。
また、Time オブジェクトは協定世界時と地方時... -
TracePoint (42004.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... -
ZeroDivisionError (42004.0)
-
整数に対して整数の 0 で除算を行ったときに発生します。
整数に対して整数の 0 で除算を行ったときに発生します。 -
File
:: Stat (33058.0) -
ファイルの情報を格納したオブジェクトのクラス。
ファイルの情報を格納したオブジェクトのクラス。
FileTest に同名のモジュール関数がある場合はそれと同じ働きをします。ただ、
ファイル名を引数に取るかわりに Stat 自身について判定する点が違います。
//emlist[][ruby]{
p File::Stat.new($0).directory? #=> false
p FileTest.directory?($0) #=> false
//}
1.8 以降では、属性メソッドがシステムでサポートされていない場合 nil が返ります。
なお、1.7 以前では 0 が返っていました。
dev デバイス番号(フ... -
Encoding
:: Converter (33004.0) -
文字エンコーディング(文字符号化方式)の変換器のクラスです。既存の変換器より一段細かな処理が可能となります。
文字エンコーディング(文字符号化方式)の変換器のクラスです。既存の変換器より一段細かな処理が可能となります。
Encoding::Converter を用いて変換を行う場合は、Encoding::Converter#convert か、より細かな変換処理が可能な Encoding::Converter#primitive_convert が利用できます。
エンコーディングを変換するメソッドはこの他に String#encode, NKF.#nkf
などがあります。 -
Encoding
:: ConverterNotFoundError (33004.0) -
指定した名前のエンコーディング変換をする変換器が 存在しない場合に発生する例外。
指定した名前のエンコーディング変換をする変換器が
存在しない場合に発生する例外。
//emlist[例][ruby]{
"あ".encode("Foo")
#=> Encoding::ConverterNotFoundError: code converter not found (UTF-8 to Foo)
//} -
Complex (24328.0)
-
複素数を扱うクラスです。
複素数を扱うクラスです。
Complex オブジェクトを作成するには、Kernel.#Complex、
Complex.rect、Complex.polar、Numeric#to_c、
String#to_c のいずれかを使用します。
//emlist[Complex オブジェクトの作り方][ruby]{
Complex(1) # => (1+0i)
Complex(2, 3) # => (2+3i)
Complex.polar(2, 3) # => (-1.9799849932008908+0.2822400161197344i)
Complex(0.... -
Range (24076.0)
-
範囲オブジェクトのクラス。 範囲オブジェクトは文字どおり何らかの意味での範囲を表します。数の範囲はもちろん、 日付の範囲や、「"a" から "z" まで」といった文字列の範囲を表すこともできます。
範囲オブジェクトのクラス。
範囲オブジェクトは文字どおり何らかの意味での範囲を表します。数の範囲はもちろん、
日付の範囲や、「"a" から "z" まで」といった文字列の範囲を表すこともできます。
==== 作り方
範囲オブジェクトは、Range.new を用いるほか、範囲演算子(`..' または `...')を
用いた d:spec/operator#range で生成できます。
いずれの方法でも始端と終端を与えます。
//emlist[範囲オブジェクトの例][ruby]{
Range.new(1, 5) # 1 以上 5 以下
1..5 # 同上
1...5 ... -
Process
:: Status (24040.0) -
プロセスの終了ステータスを表すクラスです。 メソッド Process.#wait2 などの返り値として使われます。
プロセスの終了ステータスを表すクラスです。
メソッド Process.#wait2 などの返り値として使われます。
=== 使用例
wait を使用した例
fork { exit }
Process.wait
case
when $?.signaled?
p "child #{$?.pid} was killed by signal #{$?.termsig}"
if $?.coredump? # システムがこのステータスをサポートしてなければ常にfalse
p "child #{$?.pid} dumped core."
end
... -
fatal (24022.0)
-
インタプリタ内部で致命的なエラーが起こったときに発生します。
インタプリタ内部で致命的なエラーが起こったときに発生します。
致命的なエラーとは、例えば以下のような状態です。
* スレッドのデッドロックが発生した
* -x オプションや -C オプションで指定されたディレクトリに移動できなかった
* -i オプション付きで起動されたが、
パーミッションなどの関係でファイルを変更できなかった
通常の手段では、
Ruby プログラムからは fatal クラスにはアクセスできません。