タグ

ブックマーク / ryym.tokyo (1)

  • Ruby: Mixinモジュールに private メソッドを作る · ryym.log

    TL;DR Mixin用のモジュールで、それをインクルードするクラスからも見えないような private スコープが欲しい。 Ruby2.4以降なら、自分の中で自分自身を refine する事でそれっぽい事はできる。 通常の private とは違うしイマイチな点もある。 サブクラスからも見えない private スコープ Mixin用にモジュールを作った時、「それをインクルードするクラスからも見えない private スコープ」 が欲しくなる事ってありませんか? Rubyの private はそのクラス/モジュールを継承するクラスからも見えてしまうので、 Mixin用モジュールの中で private メソッドを定義しても、それをインクルードするクラスから呼べてしまいます。 特に、例えば Rails の Helper のように色んなところでインクルードされるモジュールでは、 インクルードす

    aki77
    aki77 2018/05/16
    サブクラスからも見えない private スコープ
  • 1