エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
mattr_accessorとcattr_accessor - chikuchikugonzalezの雑記帳
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
mattr_accessorとcattr_accessor - chikuchikugonzalezの雑記帳
Rubyの記事を検索して出てくるページにですね、モジュールに対するattr_accessorみたいな関数であるmatt... Rubyの記事を検索して出てくるページにですね、モジュールに対するattr_accessorみたいな関数であるmattr_accessorというのがあったのですよ。 で、それを使おうとしたら そんなんしらんわ(´・ω・`) 的なことをRubyインタプリタさんは言ってくるわけですよ。 色々Googleさんに聞いたらどうもこれ、Rails (てかActiveSupport) で定義されているらしい。ので、それをRailsなしでも動くやつとして抜き出してみた*1。 まずはModuleのmattr_accessorから。正直class_evalとか初めて見たわ(;´∀`) class Module def mattr_reader(*syms) syms.each do |sym| class_eval(<<-EOS, __FILE__, __LINE__ + 1) @@#{sym} = nil