Class: Module

Inherits:
Object
  • Object
show all
Defined in:
lib/_appscript/safeobject.rb

Overview

PRIVATE

Since Ruby is very dynamic, methods added to the ancestors of AS_SafeObject after AS_SafeObject is defined will show up in the list of available AS_SafeObject methods. We handle this by defining hooks in Module that will hide any defined.

Instance Method Summary collapse

Instance Method Details

#included(mod) ⇒ Object



240
241
242
243
244
245
246
247
248
249
# File 'lib/_appscript/safeobject.rb', line 240

def included mod
  result = so_included(mod)
  # puts "INCLUDED %-32s %s" % [mod, self]
  if mod == Object
    public_instance_methods(true).each { |name| AS_SafeObject.hide(name) }
    #private_instance_methods(true).each { |name| AS_SafeObject.hide(name) }
    protected_instance_methods(true).each { |name| AS_SafeObject.hide(name) }
  end
  return result
end

#method_added(name) ⇒ Object



230
231
232
233
234
235
236
237
# File 'lib/_appscript/safeobject.rb', line 230

def method_added name
  # puts "ADDED    %-32s %s" % [name, self]
  result = so_method_added(name)
  if self == Object
    AS_SafeObject.hide(name)
  end
  return result
end

#so_includedObject



239
# File 'lib/_appscript/safeobject.rb', line 239

alias so_included included

#so_method_addedObject



229
# File 'lib/_appscript/safeobject.rb', line 229

alias so_method_added method_added