# Introspection on aliased methods?

**URL:** <https://www.ruby-forum.com/t/introspection-on-aliased-methods/110753>\
**Category:** Ruby\
**Created:** [July 30, 2007, 5:17pm UTC](https://www.ruby-forum.com/t/introspection-on-aliased-methods/110753 "2007-07-30T17:17:31Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![clipper](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/87869e/32.png) [@clipper](https://www.ruby-forum.com/u/clipper)\
**Post date:** [July 30, 2007, 5:17pm UTC](https://www.ruby-forum.com/t/introspection-on-aliased-methods/110753/1 "2007-07-30T17:17:31Z")

</div>

Is there a way to determine what equivalent methods are, that is, what  
has been aliased to what on an object or class?

---

<div class="post-metadata">

**Author:** ![clipper](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/87869e/32.png) [@clipper](https://www.ruby-forum.com/u/clipper)\
**Post date:** [July 30, 2007, 5:37pm UTC](https://www.ruby-forum.com/t/introspection-on-aliased-methods/110753/2 "2007-07-30T17:37:02Z")

</div>

On 7/30/07, Farhad F. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> ## Is there a way to determine what equivalent methods are, that is, what has been aliased to what on an object or class?
> 
> Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).

Hmm I do not know how to identify which name was used originally and  
which was aliased but if that does not matter you can do

24/122 \> irb  
irb(main):001:0\> class A  
irb(main):002:1\> def x; end  
irb(main):003:1\> def y; end  
irb(main):004:1\> alias\_method :z, :x  
irb(main):005:1\> end  
=\> A  
irb(main):006:0\> A.instance\_method(:x) == A.instance\_method(:y)  
=\> false  
irb(main):007:0\> A.instance\_method(:x) == A.instance\_method(:z)  
=\> true  
irb(main):008:0\>

you could loop over all instance\_methods of a class, or do the same  
stuff with method for any object.

HTH  
Robert

---

<div class="post-metadata">

**Author:** ![clipper](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/87869e/32.png) [@clipper](https://www.ruby-forum.com/u/clipper)\
**Post date:** [July 30, 2007, 8:49pm UTC](https://www.ruby-forum.com/t/introspection-on-aliased-methods/110753/3 "2007-07-30T20:49:53Z")

</div>

Thanks - that’s quite helpful.

Robert D. wrote:

> 24/122 \> irb  
> irb(main):001:0\> class A  
> irb(main):002:1\> def x; end  
> irb(main):003:1\> def y; end  
> irb(main):004:1\> alias\_method :z, :x  
> irb(main):005:1\> end  
> =\> A  
> irb(main):006:0\> A.instance\_method(:x) == A.instance\_method(:y)  
> =\> false  
> irb(main):007:0\> A.instance\_method(:x) == A.instance\_method(:z)  
> =\> true  
> irb(main):008:0\>
