ネストメソッドの利用法

ネストメソッドはローカルメソッドの意味でなければ必要性が無いというのが結論みたいだが、無理やり利用方法を考えてみた。メソッドが自分自身を書き換えることによって、if分岐を書かないで済ませるというものだが、やはり意味なしのようだ。

class Singleton; end
class << Singleton
  def instance
    @instance = Singleton.new
    def instance; @instance; end
    @instance
  end
end

p Singleton.instance
p Singleton.instance