title: Calling a method of a Ruby Singleton without the reference of 'instance'
body: <p>I would like to call a method of a Singleton Object without the reference to its instance</p>
  
  <pre><code>SingletonKlass.my_method
  </code></pre>
  
  <p>instead of</p>
  
  <pre><code>SingletonKlass.instance.my_method
  </code></pre>
  
  <p>i've came up with this solution (using method_missing in the class):</p>
  
  <pre><code>require 'singleton'    
  
  class SingletonKlass
    include Singleton
  
    def self.method_missing(method, *args, &amp;block)
      self.instance.send(method, *args)
    end
  
    def my_method
       puts "hi there!!"
    end
  end
  </code></pre>
  
  <p>is there any drawback to this ?
  is there any better solution ?
  any recommendation from you ?</p>
  
  <p>thank you.</p>
  
  <p>UPDATE:</p>
  
  <p>my aim is to have a module to be mixed-in with singleton classes:</p>
  
  <pre><code>module NoInstanceSingleton
     def method_missing(method, *args)
        self.instance.send(method, *args)
     end
  end
  </code></pre>
  
  <p>end then use it in the class:</p>
  
  <pre><code>class SingletonKlass
     include Singleton
     extend NoInstanceSingleton
  
    def method1; end
    def method2; end
    ...
    def methodN; end
  end
  </code></pre>
  
  <p>i want to be able to directly call:</p>
  
  <pre><code>SingletonKlass.method1
  </code></pre>