diff --git a/ext/v8/converters.cpp b/ext/v8/converters.cpp index ff311b3..367e50b 100644 --- a/ext/v8/converters.cpp +++ b/ext/v8/converters.cpp @@ -1,4 +1,21 @@ #include "converters.h" -convert_v8_to_rb_t V82RB; -convert_rb_to_v8_t RB2V8; +VALUE V82RB(v8::Handle& value) { + convert_v8_to_rb_t convert; + return convert(value); +} + +v8::Local RB2V8(VALUE value) { + convert_rb_to_v8_t convert; + return convert(value); +} + +std::string RB2String(VALUE value) { + convert_rb_to_string_t convert; + return convert(value); +} + +std::string V82String(v8::Handle& value) { + convert_v8_to_string_t convert; + return convert(value); +} \ No newline at end of file diff --git a/ext/v8/converters.h b/ext/v8/converters.h index 160a6df..c0f79cb 100644 --- a/ext/v8/converters.h +++ b/ext/v8/converters.h @@ -4,6 +4,7 @@ #include "convert_ruby.h" #include "convert_string.h" #include "convert_v8.h" +#include typedef RubyValueSource > convert_rb_to_v8_t; typedef V8HandleSource convert_v8_to_rb_t; @@ -11,7 +12,10 @@ typedef V8HandleSource convert_v8_to_rb_t; typedef RubyValueSource convert_rb_to_string_t; typedef V8HandleSource convert_v8_to_string_t; -extern convert_v8_to_rb_t V82RB; -extern convert_rb_to_v8_t RB2V8; +VALUE V82RB(v8::Handle& value); +v8::Local RB2V8(VALUE value); + +std::string RB2String(VALUE value); +std::string V82String(v8::Handle& value); #endif \ No newline at end of file