在使用RubyLine时,如何调用同一模块中的方法?

p5cysglq  于 2021-09-29  发布在  Java
关注(0)|答案(0)|浏览(129)

我用的是rubyinline。
在其中,我定义了两个函数,“splitter”和“sample_replace”。
我想做的是从splitter调用sample_replace,而不经过ruby,但我无法让它工作。
有什么办法叫它吗?

require "inline"
module Sample
  inline(:C) do |builder|
    builder.c_singleton <<-EOS
      static VALUE spliter( VALUE str){
        VALUE *cap_list = rb_str_split(str,"");

        // I want to call "sample_replace" methods.

        return cap_list;
      }
    EOS
  end

  inline(:C) do |builder|
    builder.c_singleton <<-EOS
      static VALUE sample_replace( VALUE str){
         if(strcmp(one_str,"5")==0){
           return rb_str_new2("1");
        }
        return rb_str_new2(str);
      }
    EOS
  end
end

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题