Class Methods
::
lib/singleton.rb
View on GitHub
# File tmp/rubies/ruby-3.4.1/lib/singleton.rb, line 157
def self.extended(c)
# extending an object with Singleton is a bad idea
c.singleton_class.send(:undef_method, :extend_object)
end
No documentation available
::
lib/singleton.rb
View on GitHub
# File tmp/rubies/ruby-3.4.1/lib/singleton.rb, line 152
def self.included(c)
# extending an object with Singleton is a bad idea
c.undef_method :extend_object
end
No documentation available
Instance Methods
lib/singleton.rb
View on GitHub
# File tmp/rubies/ruby-3.4.1/lib/singleton.rb, line 172
def append_features(mod)
# help out people counting on transitive mixins
unless mod.instance_of?(Class)
raise TypeError, "Inclusion of the OO-Singleton module in module #{mod}"
end
super
end
No documentation available
lib/singleton.rb
View on GitHub
# File tmp/rubies/ruby-3.4.1/lib/singleton.rb, line 180
def included(klass)
super
klass.private_class_method :new, :allocate
klass.extend module_with_class_methods
Singleton.__init__(klass)
end
No documentation available