Files
mruby-mruby/mrblib/error.rb
T
2014-06-02 22:38:02 +09:00

69 lines
939 B
Ruby

##
# Exception
#
# ISO 15.2.22
class Exception
##
# Raise an exception.
#
# ISO 15.2.22.4.1
def self.exception(*args, &block)
self.new(*args, &block)
end
end
# ISO 15.2.24
class ArgumentError < StandardError
end
# ISO 15.2.25
class LocalJumpError < StandardError
end
# ISO 15.2.26
class RangeError < StandardError
end
class FloatDomainError < RangeError
end
# ISO 15.2.26
class RegexpError < StandardError
end
# ISO 15.2.29
class TypeError < StandardError
end
# ISO 15.2.31
class NameError < StandardError
attr_accessor :name
def initialize(message=nil, name=nil)
@name = name
super(message)
end
end
# ISO 15.2.32
class NoMethodError < NameError
attr_reader :args
def initialize(message=nil, name=nil, args=nil)
@args = args
super message, name
end
end
# ISO 15.2.33
class IndexError < StandardError
end
class KeyError < IndexError
end
class NotImplementedError < ScriptError
end