summaryrefslogtreecommitdiff
path: root/lib/singleton.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/singleton.rb')
-rw-r--r--lib/singleton.rb9
1 files changed, 2 insertions, 7 deletions
diff --git a/lib/singleton.rb b/lib/singleton.rb
index 07420d2ea2..6da939124e 100644
--- a/lib/singleton.rb
+++ b/lib/singleton.rb
@@ -92,7 +92,7 @@
# p a.strip # => nil
#
module Singleton
- VERSION = "0.1.1"
+ VERSION = "0.2.0"
# Raises a TypeError to prevent cloning.
def clone
@@ -121,12 +121,7 @@ module Singleton
end
def instance # :nodoc:
- return @singleton__instance__ if @singleton__instance__
- @singleton__mutex__.synchronize {
- return @singleton__instance__ if @singleton__instance__
- @singleton__instance__ = new()
- }
- @singleton__instance__
+ @singleton__instance__ || @singleton__mutex__.synchronize { @singleton__instance__ ||= new }
end
private