extend_object(p1) public

Extends the specified object by adding this module’s constants and methods (which are added as singleton methods). This is the callback method used by Object#extend.

   module Picky
     def Picky.extend_object(o)
       if String === o
         puts "Can't add Picky to a String"
       else
         puts "Picky added to #{o.class}"
         super
       end
     end
   end
   (s = Array.new).extend Picky  # Call Object.extend
   (s = "quick brown fox").extend Picky

produces:

   Picky added to Array
   Can't add Picky to a String
Show source
Register or log in to add new notes.