トップレベルでRefinementを使用できない

IRBを起動し、

irb

Refinementを使用しようとすると、

module Double
  refine Integer do
    def doubled
      self * 2
    end
  end
end

using Double

RuntimeError (main.using is permitted only at toplevel)というエラーになる。

起動オプションでエラーを抑制する

このエラーはIRBの起動オプションで回避できる。

irb --context-mode=1