aliases: Exception2MessageMapper::E2MM
要約
例外クラスに特定のエラーメッセージ用フォーマットを関連づけるためのモジュールです。
目次
- 特異メソッド
- インスタンスメソッド
特異メソッド
Raise(klass = E2MM, exception_class = nil, *rest) -> ()
[permalink][rdoc][edit]Fail(klass = E2MM, exception_class = nil, *rest) -> ()
-
登録されている情報を使用して、例外を発生させます。
- [PARAM] klass:
- 一階層上となるクラス名を指定します。
- [PARAM] exception_class:
- 例外クラス。
- [PARAM] rest:
- メッセージに埋め込む値。
- [EXCEPTION] Exception2MessageMapper::ErrNotRegisteredException:
- 指定された例外クラスに対応するメッセージが存在しない場合に発生します。
def_e2message(klass, exception_class, message_format) -> Class
[permalink][rdoc][edit]-
すでに存在する例外クラス exception_class に、エラーメッセージ用フォーマット message_format を関連づけます。
- [PARAM] klass:
- 一階層上となるクラス名を指定します。
- [PARAM] exception_class:
- メッセージを登録する例外クラスを指定します。
- [PARAM] message_format:
- メッセージのフォーマットを指定します。 Kernel.#sprintf のフォーマット文字列と同じ形式を使用できます。
- [RETURN]
- exception_class を返します。
def_exception(klass, exception_name, message_format, superklass = StandardError) -> Class
[permalink][rdoc][edit]-
exception_name という名前の例外クラスを定義します。
- [PARAM] klass:
- 一階層上となるクラス名を指定します。
- [PARAM] exception_name:
- 例外クラスの名前をシンボルで指定します。
- [PARAM] message_format:
- メッセージのフォーマットを指定します。 Kernel.#sprintf のフォーマット文字列と同じ形式を使用できます。
- [PARAM] superklass:
- 定義する例外クラスのスーパークラスを指定します。省略すると StandardError を使用します。
- [RETURN]
- 定義した例外クラスを返します。
e2mm_message(klass, exp) -> String | nil
[permalink][rdoc][edit]message(klass, exp) -> String | nil
-
[TODO]
- [PARAM] klass:
- [PARAM] exp:
extend_object(cl) -> ()
[permalink][rdoc][edit]-
[TODO]
- [PARAM] cl:
インスタンスメソッド
Raise(exception_class = nil, *rest) -> ()
[permalink][rdoc][edit]Fail(exception_class = nil, *rest) -> ()
-
登録されている情報を使用して、例外を発生させます。
- [PARAM] exception_class:
- 例外クラス。
- [PARAM] rest:
- メッセージに埋め込む値。
- [EXCEPTION] Exception2MessageMapper::ErrNotRegisteredException:
- 指定された例外クラスに対応するメッセージが存在しない場合に発生します。
例:
class Foo extend Exception2MessageMapper p def_exception :NewExceptionClass, "message...%d, %d and %d" # => def foo Raise NewExceptionClass, 1, 2, 3 end end Foo.new().foo() #=> in `Raise': message...1, 2 and 3 (Foo::NewExceptionClass) # という例外が発生します。 Foo.Raise Foo::NewExceptionClass, 1, 3, 5 #=> in `Raise': message...1, 3 and 5 (Foo::NewExceptionClass) # という例外が発生します。
bind(cl) -> ()
[permalink][rdoc][edit]-
[TODO]
- [PARAM] cl:
- xxx
def_e2message(exception_class, message_format) -> Class
[permalink][rdoc][edit]-
すでに存在する例外クラス exception_class に、エラーメッセージ用フォーマット message_format を関連づけます。
このフォーマットは Exception2MessageMapper#Raise, Exception2MessageMapper#Fail で使用します。
- [PARAM] exception_class:
- メッセージを登録する例外クラスを指定します。
- [PARAM] message_format:
- メッセージのフォーマットを指定します。 Kernel.#sprintf のフォーマット文字列と同じ形式を使用できます。
- [RETURN]
- exception_class を返します。
def_exception(exception_name, message_format, superclass = StandardError) -> Class
[permalink][rdoc][edit]-
exception_name という名前の例外クラスを定義します。
- [PARAM] exception_name:
- 定義する例外クラスの名前をシンボルで指定します。
- [PARAM] message_format:
- メッセージのフォーマット。
- [PARAM] superclass:
- 定義する例外のスーパークラスを指定します。省略すると StandardError を使用します。
fail(exception_class = nil, *rest) -> ()
[permalink][rdoc][edit]-
登録されている情報を使用して、例外を発生させます。
- [PARAM] exception_class:
- 例外クラス。
- [PARAM] rest:
- メッセージに埋め込む値。
- [EXCEPTION] Exception2MessageMapper::ErrNotRegisteredException:
- 指定された例外クラスに対応するメッセージが存在しない場合に発生します。