Sha256: aa94d7c4e6477062f60180d5fba83ead24f742f5078884bc4f6c8b9f977d2d8a
Contents?: true
Size: 1.62 KB
Versions: 3
Compression:
Stored size: 1.62 KB
Contents
module ExampleActorClass def self.create(included_module) Class.new do include included_module attr_reader :name def initialize(name) @name = name @delegate = [:bar] end def change_name(new_name) @name = new_name end def change_name_with_a_bang(new_name) change_name! new_name end def change_name_async(new_name) async.change_name new_name end def greet "Hi, I'm #{@name}" end def run(*args) yield(*args) end def crash raise ExampleCrash, "the spec purposely crashed me :(" end def crash_with_abort(reason, foo = nil) example_crash = ExampleCrash.new(reason) example_crash.foo = foo abort example_crash end def crash_with_abort_raw(reason) abort reason end def internal_hello external_hello end def external_hello "Hello" end def inspect_thunk inspect end def method_missing(method_name, *args, &block) if delegates?(method_name) @delegate.send method_name, *args, &block else super end end def respond_to?(method_name, include_private = false) super || delegates?(method_name) end def call_private zomg_private! end def zomg_private @private_called = true end private :zomg_private attr_reader :private_called private def delegates?(method_name) @delegate.respond_to?(method_name) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
celluloid-0.12.4 | spec/support/example_actor_class.rb |
celluloid-0.12.4.pre2 | spec/support/example_actor_class.rb |
celluloid-0.12.4.pre | spec/support/example_actor_class.rb |