summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDaniel Pepper <pepper.daniel@gmail.com>2023-06-04 21:29:32 -0700
committergit <svn-admin@ruby-lang.org>2023-06-05 04:29:37 +0000
commit542c70aab748cf17960cc2a0959ba490983ceae6 (patch)
treeda953635871d99535bfc62fc130b6905b5e7154d /lib
parent3fe0f8c68bf2cd861b7061de8a662885e5aa5234 (diff)
[ruby/singleton] Simplify implementation of `Singleton#instance`.
(https://github.com/ruby/singleton/pull/9) - Add more tests to cover rails' usage.
Diffstat (limited to 'lib')
-rw-r--r--lib/singleton.rb7
1 files changed, 1 insertions, 6 deletions
diff --git a/lib/singleton.rb b/lib/singleton.rb
index 07420d2ea2..7ed17a769c 100644
--- a/lib/singleton.rb
+++ b/lib/singleton.rb
@@ -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