悩んだのでメモしておきます。
obj の特異クラスをフラットスコープで開くには、次のように書けばよいです。
(class << obj; self; end).class_eval do
end
また、以下の様に「メタプログラミングRuby」に載っている eigenclass メソッドを定義しておくと
class Object
def eigenclass
class << self; self; end
end
end
次の様に、より綺麗に記述することができます。
obj.eigenclass.class_eval do
end
[amazon asin="4048687158" /]