Sha256: 9f63d8be14038617a1bacb130ab0ac4c5ea1ab4ba972a620b6f75cd66308274e

Contents?: true

Size: 644 Bytes

Versions: 3

Compression:

Stored size: 644 Bytes

Contents

require 'blankslate'

module Rupy
    #An object to be used as a base class for Proxy classes.
    #It is necessary to define this because no such class exists in Ruby
    #1.8.x
    class BlankObject < BlankSlate
        class << self
            def hide(name)
                if instance_methods.include?(name) and
                    name.to_s !~ /^(__|instance_eval|object_id)/
                    @hidden_methods ||= {}
                    @hidden_methods[name.to_sym] = instance_method(name)
                    undef_method name
                end
            end
        end

        instance_methods.each { |m| hide(m) }
    end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rupy-0.4.2 lib/rupy/blankobject.rb
rupy-0.4.1 lib/rupy/blankobject.rb
rupy-0.4.0 ./lib/rupy/blankobject.rb