English 中文(简体)
如何打印方法参数名称
原标题:How to print a method s parameter names

是否可迅速编制废墟方法的可能参数名称?

例如:

def my_method(param1, param2, param3, ...)
  # stuff
end

puts get_params("my_method")

这将产生这样的结果:

param1
param2
param3
...

感谢!

Oh, btw I m on ree-1.8.7...

问题回答

How about:

class A
  def my_method(param1, param2, param3)
    # stuff
  end
end

A.instance_method(:my_method).parameters # => [[:req, :param1],[:req, :param2],[:req, :param3]]

A.instance_method(:my_method).parameters.collect { |p| p[1] } # => [:param1, param2, param3]

如果你在ir子上这样做,例如:

>> def my_method(param1, param2, param3)
>>   # stuff
>> end
=> nil

>> def get_params(method_name)
>>   self.class.instance_method(method_name.to_sym).parameters.collect { |p| p[1] }.each { |name| puts name }
>> end
=> nil

>> get_params(:my_method)
param1
param2
param3
=> [:param1, :param2, :param3]

(Copy/pasted from my irb console.)





相关问题
Ruby parser in Java

The project I m doing is written in Java and parsers source code files. (Java src up to now). Now I d like to enable parsing Ruby code as well. Therefore I am looking for a parser in Java that parses ...

rails collection_select vs. select

collection_select and select Rails helpers: Which one should I use? I can t see a difference in both ways. Both helpers take a collection and generates options tags inside a select tag. Is there a ...

RubyCAS-Client question: Rails

I ve installed RubyCAS-Client version 2.1.0 as a plugin within a rails app. It s working, but I d like to remove the ?ticket= in the url. Is this possible?

Ordering a hash to xml: Rails

I m building an xml document from a hash. The xml attributes need to be in order. How can this be accomplished? hash.to_xml

multiple ruby extension modules under one directory

Can sources for discrete ruby extension modules live in the same directory, controlled by the same extconf.rb script? Background: I ve a project with two extension modules, foo.so and bar.so which ...

Text Editor for Ruby-on-Rails

guys which text editor is good for Rubyonrails? i m using Windows and i was using E-Texteditor but its not free n its expired now can anyone plese tell me any free texteditor? n which one is best an ...

热门标签