2012-03-16 6 views
2

私は%wのようなメソッド(または表記法)を作ろうとしましたが、rubyはメソッドの名前に満足しておらず、いつもエラーを出しています。私はちょっと検索しようとしましたが、刺激的なものは何も見つかりませんでした。%wや%xのようなRubyでパーセントメソッドを作成するには?

どのようにすればいいですか?例えば

def %f(&block) 
    puts "foo" 
end 
+1

なぜあなたはそれをしたいですか? –

+1

楽しんでください。 :)言語を拡張する – texasbruce

答えて

3

これらはメソッドではなく、リテラル構文です。 を実行する言語はごくわずかですが、では新しいリテラルを作成できますが、Rubyはその1つではありません。ほとんどの言語と同様に、構文は固定されています。

4

あなたはそれを行うことはできません。これらのショートカットは言語の一部です。

2

少なくともRuby 1.9のCベースの実装であるYARV RubyではRubyを編集する必要があります。

parse.y famtourスライド63〜76は、別のパーセントメソッドを作成するためにRubyを編集しているユーザーの例です。仕事の状況にはあまり実用的ではありません!

+0

ありがとう!これは非常に便利です! – texasbruce

関連する問題