Singleton: Difference between revisions

Content added Content deleted
(→‎{{header|C++}}: thread-safe singleton without mutexes in C++11)
m (Added Sidef)
Line 1,580: Line 1,580:
// any code here gets executed as if in a constructor
// any code here gets executed as if in a constructor
}</lang>
}</lang>

=={{header|Sidef}}==
<lang ruby>class Singleton(name) {
static instance;

method new(name) {
instance ||= Singleton.bless(Hash(name => name));
}
method new {
Singleton.new(nil);
}
}

var s1 = Singleton('foo');
say s1.name; #=> 'foo'
say s1.object_id; #=> '30424504'

var s2 = Singleton();
say s2.name; #=> 'foo'
say s2.object_id; #=> '30424504'

s2.name = 'bar'; # change name in s2
say s1.name; #=> 'bar'</lang>


=={{header|Slate}}==
=={{header|Slate}}==