# Dynamically lookup setter methods defined by a instanciated class

**URL:** <https://www.ruby-forum.com/t/dynamically-lookup-setter-methods-defined-by-a-instanciated-class/125540>\
**Category:** Rails\
**Created:** [January 10, 2008, 12:00am UTC](https://www.ruby-forum.com/t/dynamically-lookup-setter-methods-defined-by-a-instanciated-class/125540 "2008-01-10T00:00:57Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Russell\_McConnachie](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/b5ac83/32.png) [@Russell\_McConnachie](https://www.ruby-forum.com/u/Russell_McConnachie)\
**Post date:** [January 10, 2008, 12:00am UTC](https://www.ruby-forum.com/t/dynamically-lookup-setter-methods-defined-by-a-instanciated-class/125540/1 "2008-01-10T00:00:57Z")

</div>

Is there any cleaner way than this to get all setter methods of a  
instantiated class?

class ABC  
attr\_accessor :a  
attr\_accessor :b  
attr\_accessor :c  
attr\_reader :d  
attr\_writer :e  
end

abc = ABC.new

puts abc.public\_methods.collect! { |m| m if m =~ /[[:alpha:]]=$/  
}.delete\_if { |m| m.nil? }

> > require ‘test.rb’  
> > a=  
> > e=  
> > b=  
> > c=  
> > =\> true

Thanks.
