1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
module Clamp
class DeclarationError < StandardError
end
class RuntimeError < StandardError
def initialize(message, command)
super(message)
@command = command
end
attr_reader :command
end
# raise to signal incorrect command usage
class UsageError < RuntimeError; end
# raise to request usage help
class HelpWanted < RuntimeError
def initialize(command)
super("I need help", command)
end
end
# raise to signal error during execution
class ExecutionError < RuntimeError
def initialize(message, command, status = 1)
super(message, command)
@status = status
end
attr_reader :status
end
end
|