From: anne001 Date: 2006-07-20T09:30:11+09:00 Subject: Re: Passing the name of an argument and then its value I don't really want to write the names out! and I want it to be general to apply to other methods in the wsdl amazon series. but I like your idea, and it almost works, much cleaner way of passing the parameters. array_of_names.index(key) is nil in my case... I have to figure out why. but I can use my own code for this if I don't find it. Anyway, thank you so much for your time and ideas. def namedrequest(fxname,hash) nameinfo=eval(fxname).new.inspect array_of_names=nameinfo.scan(/@(\w+)=/) array_of_arguments=Array.new(array_of_names.length,'') hash.keys.each{ |key| array_of_arguments[array_of_names.index(key)]=hash[key] } command=fxname.slice(0,1).downcase+fxname.slice(1,fxname.length)+"="+fxname+".new(*array_of_arguments)" p command eval(command) end