00001 #ifndef Exc_Ruby__Ruby_Funcall__hpp_
00002 #define Exc_Ruby__Ruby_Funcall__hpp_
00003
00010 #include <ruby.h>
00011 #include "detail/ruby_hacks.hpp"
00012
00013 namespace Exc_Ruby
00014 {
00015
00018
00023 template<typename Exc_Converter>
00024 VALUE rb_cpp_protect(
00025 RUBY_VALUE_FUNC f,
00026 VALUE arg,
00027 Exc_Converter ec);
00028
00031 inline VALUE rb_cpp_protect(
00032 RUBY_VALUE_FUNC f,
00033 VALUE arg);
00034
00037 inline VALUE rb_cpp_funcall3(VALUE obj, ID method, int argc, VALUE const * argv);
00038
00039 }
00040
00041 #include "ruby_funcall.ipp"
00042 #include "rb_cpp_funcall.hpp"
00043
00044 #endif // Exc_Ruby__Ruby_Funcall__hpp_
00045