我用的是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
暂无答案!
目前还没有任何答案,快来回答吧!