タグ

2023年9月25日のブックマーク (1件)

  • Ruby: gemが生成するコードを無名モジュールとprependで動かす(翻訳)|TechRacho by BPS株式会社

    概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Using anonymous modules and prepend to work with generated code | Arkency Blog 原文公開日: 2016/02/29 著者: Robert Pankowecki サイト: Arkency Blog 前回のセッター記事で、セッターメソッドがgemによって作成されている場合はどうすればよいのかというコメントをいただきました。このような場合、セッターをどのように上書きできるでしょうか? たとえばawesomeという名前のgemがあり、そのgemのAwesomeモジュールが自分のクラスでawesomeゲッターとawesome=(val)というセッターを導入し、そこに興味深いロジックが仕込まれているとしましょう。これを次のように使うとします。 class Foo e

    Ruby: gemが生成するコードを無名モジュールとprependで動かす(翻訳)|TechRacho by BPS株式会社
    akatakun
    akatakun 2023/09/25
    extendはクラスツリーに突っ込まれるわけではないから、愚直にsuperしてもメソッドが見つからない。メタプログラミングで継承をうまく動かすには工夫が必要