module Exception2MessageMapper
def Raise(err = nil, *rest)
rest: message arguments
err: exception
Fail(err, *rest)
def Raise(err = nil, *rest) E2MM.Raise(self, err, *rest) end
def bind(cl)
def bind(cl) self.module_eval "#{<<-"begin;"}\n#{<<-"end;"}", __FILE__, __LINE__+1 begin; def Raise(err = nil, *rest) Exception2MessageMapper.Raise(self.class, err, *rest) end alias Fail Raise class << self undef included end def self.included(mod) mod.extend Exception2MessageMapper end end; end
def def_e2message(c, m)
define exception c with message m.
m: message_form
c: exception
def_e2message(c, m)
def def_e2message(c, m) E2MM.def_e2message(self, c, m) end
def def_exception(n, m, s = StandardError)
define exception named ``c'' with message m.
s: superclass(default: StandardError)
m: message_form
n: exception_name
def_exception(n, m, s)
def def_exception(n, m, s = StandardError) E2MM.def_exception(self, n, m, s) end