Sha256: 5529d705598a37b94d1a1baeb93377be78c09e97c6c4eb4370b99639928d557a
Contents?: true
Size: 893 Bytes
Versions: 10
Compression:
Stored size: 893 Bytes
Contents
module Kernel # Access to an object's "special" class, otherwise # known as it's eigenclass or metaclass or own, etc. # # One day these names must be reconciled! def singleton (class << self; self; end) end alias_method :__singleton__, :singleton end # _____ _ # |_ _|__ ___| |_ # | |/ _ \/ __| __| # | | __/\__ \ |_ # |_|\___||___/\__| # =begin test require 'test/unit' class TCKernel < Test::Unit::TestCase def test_singleton o = Object.new assert_equal( (class << o; self; end), o.singleton ) end #def test_singleton_eval # assert_nothing_raised do # o.singleton_class_eval{ @@a = "test" } # end #end #def test_singleton_method # assert_nothing_raised do # o.define_singleton_method(:testing){ |x| x + 1 } # end # assert_equal(2, o.testing(1) ) #end end =end
Version data entries
10 entries across 10 versions & 1 rubygems