RubyInlineでsingleton method作れるんか

Rubyの中にC言語を埋め込めて高速化を図れる
RubyInlineは大変便利かと思います。


sampleではinstance methodの埋め込みばっかり例に出ているんですが
moduleのsingletonメソッドか作りたくなったのでソース見てみたら普通にありました。
'c'でなくって'c_singleton'メソッドを使うとsingletonメソッドになります。

require 'inline'

module World
  inline do |builder|
    builder.c_singleton <<-CODE
      VALUE
      hello(){
        return rb_str_new2("Hello,World!");
      }
    CODE
  end
end

puts World.hello
Hello,World!


普通のmethodがあって、singleton methodがあって、
private methodはないようです。
なんでなんで〜


ちなみに以下のようにしてもprivateメソッドにはなりませんよ。

require 'inline'

class World
  private
  inline do |builder|
    builder.c <<-CODE
      VALUE
      hello(){
        return rb_str_new2("Hello,World!");
      }
    CODE
  end
end

puts World.new.hello
Hello,World!