エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
Nested SymbolでDSLをより美しく - Hello, world! - s21g
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Nested SymbolでDSLをより美しく - Hello, world! - s21g
のように書くのが、DSL的にちょっとかっこうわるいです。 そこで、以下のようなものがあればちょっと奇... のように書くのが、DSL的にちょっとかっこうわるいです。 そこで、以下のようなものがあればちょっと奇麗に書けます。 1 class Symbol 2 def method_missing(method, *args, &block) 3 if args.empty? && block.nil? 4 [self, method].join(':').intern 5 else 6 super 7 end 8 end 9 end 10 11 >> :foo #=> :foo 12 >> :foo.bar #=> :"foo:bar" 13 >> :foo.bar.baz #=> :"foo:bar:baz"