lib/celluloid/exceptions.rb in celluloid-0.17.0 vs lib/celluloid/exceptions.rb in celluloid-0.17.1
- old
+ new
@@ -1,23 +1,28 @@
module Celluloid
- # Base class of all Celluloid errors
- Error = Class.new(StandardError)
-
- # Don't do Actor-like things outside Actor scope
- NotActorError = Class.new(Celluloid::Error)
-
- # Trying to do something to a dead actor
- DeadActorError = Class.new(Celluloid::Error)
-
- # A timeout occured before the given request could complete
- TimeoutError = Class.new(Celluloid::Error)
-
- # The sender made an error, not the current actor
- class AbortError < Celluloid::Error
+ class Error < StandardError; end
+ class Interruption < Exception; end
+ class TimedOut < Celluloid::Interruption; end # Distinguished from `Timeout`
+ class StillActive < Celluloid::Error; end
+ class NotActive < Celluloid::Error; end
+ class NotActorError < Celluloid::Error; end # Don't do Actor-like things outside Actor scope
+ class DeadActorError < Celluloid::Error; end # Trying to do something to a dead actor
+ class NotTaskError < Celluloid::Error; end # Asked to do task-related things outside a task
+ class DeadTaskError < Celluloid::Error; end # Trying to resume a dead task
+ class TaskTerminated < Celluloid::Interruption; end # Kill a running task after terminate
+ class TaskTimeout < Celluloid::TimedOut; end # A timeout occured before the given request could complete
+ class ConditionError < Celluloid::Error; end
+ class AbortError < Celluloid::Error # The sender made an error, not the current actor
attr_reader :cause
-
def initialize(cause)
@cause = cause
super "caused by #{cause.inspect}: #{cause}"
+ end
+ end
+ module Feature
+ module Requires
+ class RubiniusOrJRuby < Celluloid::Error; end
+ class Rubinius < Celluloid::Error; end
+ class JRuby < Celluloid::Error; end
end
end
end