kikeda1104です。自宅の周りで騒音がひどくいらついて切れましたヽ(`Д´#)ノ ムキー!!。
近所の人が自分の職業を知っているのが、「プログラマ」だと知られているのがなぜですし。 「ゾンビ脳」とかふざけたこと言われていることもあるので、良い加減ここ出て行きたいです。 善行は、頭がおかしい人が多すぎると思います。
愚痴はここまでで、前回記述した、evalを利用して、メソッドを動的に宣言する。スクリプトでしたが。Faradayのコードをもう少し、読み込むことで理解が深まったので、改めて書きます。
コードの見直し
前回のコード
# 動かないです。
eval <<-"EOS"
def new_methods
%w(office category).each do |name|
eval<<"EOS"
def area_in_#{name}(ksjcd="")
conn.get '&ksjcd=#{ksjcd}'
end
EOS
end
end
EOS
修正したコード
class Hoge
class_eval <<-"RUBY"
%w(office category).each do |method|
def area_in_#{method}(ksjcd="")
conn.get '&ksjcd=#{ksjcd}'
end
end
RUBY
end
クラスのインスタンスを生成したときに、動的にメソッドが定義されるようになります。
以上です。