summaryrefslogtreecommitdiff
path: root/lib/mutex_m.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/mutex_m.rb')
-rw-r--r--lib/mutex_m.rb29
1 files changed, 12 insertions, 17 deletions
diff --git a/lib/mutex_m.rb b/lib/mutex_m.rb
index fe05a45e9d..0192d83bee 100644
--- a/lib/mutex_m.rb
+++ b/lib/mutex_m.rb
@@ -25,18 +25,19 @@
#
module Mutex_m
+ def Mutex_m.define_aliases(cl)
+ cl.module_eval %q{
+ alias locked? mu_locked?
+ alias lock mu_lock
+ alias unlock mu_unlock
+ alias try_lock mu_try_lock
+ alias synchronize mu_synchronize
+ }
+ end
+
def Mutex_m.append_features(cl)
super
- unless cl.instance_of?(Module)
- cl.module_eval %q{
- alias locked? mu_locked?
- alias lock mu_lock
- alias unlock mu_unlock
- alias try_lock mu_try_lock
- alias synchronize mu_synchronize
- }
- end
- self
+ define_aliases(cl) unless cl.instance_of?(Module)
end
def Mutex_m.extend_object(obj)
@@ -50,13 +51,7 @@ module Mutex_m
defined? unlock and
defined? try_lock and
defined? synchronize)
- eval "class << self
- alias locked? mu_locked?
- alias lock mu_lock
- alias unlock mu_unlock
- alias try_lock mu_try_lock
- alias synchronize mu_synchronize
- end"
+ Mutex_m.define_aliases(class<<self;self;end)
end
mu_initialize
end