[MacRuby] #1359: Aliased objective-c methods are not equal to their ruby aliases

MacRuby ruby-noreply at macosforge.org
Wed Jul 13 23:03:33 PDT 2011


#1359: Aliased objective-c methods are not equal to their ruby aliases
------------------------------------+---------------------------------------
 Reporter:  mrada@…                 |       Owner:  lsansonetti@…        
     Type:  defect                  |      Status:  new                  
 Priority:  minor                   |   Milestone:                       
Component:  MacRuby                 |    Keywords:  reduction            
------------------------------------+---------------------------------------
 I was writing a test case to check that a method was aliased correctly and
 ran across this:
 {{{

 class NSURL
   alias_method :inspect, :absoluteString
 end

 class Test
   def one
   end
   alias_method :two, :one
 end

 test = Test.new
 url  = NSURL.URLWithString('http://macruby.org/')

 test.method(:one) == test.method(:two) # => true
 url.method(:inspect) == url.method(:absoluteString) # => false
 }}}

 It seems that when I call `url.method(:inspect)` it returns the a
 different method "#<Method: NSURL(NSObject)#inspect>" but if I #call that
 method it will do the correct thing.

-- 
Ticket URL: <http://www.macruby.org/trac/ticket/1359>
MacRuby <http://macruby.org/>



More information about the macruby-tickets mailing list