Module: Singleton::SingletonClassMethods

Defined in:
lib/singleton.rb

Overview

:nodoc:

Instance Method Summary collapse

Instance Method Details

#_load(str) ⇒ Object

By default calls instance(). Override to retain singleton state.


119
120
121
# File 'lib/singleton.rb', line 119

def _load(str)
  instance
end

#cloneObject

:nodoc:


114
115
116
# File 'lib/singleton.rb', line 114

def clone # :nodoc:
  Singleton.__init__(super)
end

#instanceObject

:nodoc:


123
124
125
126
127
128
129
130
# File 'lib/singleton.rb', line 123

def instance # :nodoc:
  return @singleton__instance__ if @singleton__instance__
  @singleton__mutex__.synchronize {
    return @singleton__instance__ if @singleton__instance__
    @singleton__instance__ = new()
  }
  @singleton__instance__
end