Dynamically lookup setter methods defined by a instanciated class

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.