1
0
Fork 0
mirror of https://github.com/rubyjs/therubyracer synced 2023-03-27 23:21:42 -04:00

remove hacks around number usage

This commit is contained in:
Charles Lowell 2015-07-13 19:46:15 -05:00
parent 18c07758a9
commit 712ad9318b
5 changed files with 10 additions and 18 deletions

View file

@ -5,10 +5,8 @@
namespace rr {
class Integer : public Ref<v8::Integer> {
public:
Integer(v8::Isolate* isolate, int32_t value) :
Ref<v8::Integer>(isolate, v8::Integer::New(isolate, value)) {}
Integer(v8::Isolate* isolate, uint32_t value) :
Ref<v8::Integer>(isolate, v8::Integer::NewFromUnsigned(isolate, value)) {}
Integer(v8::Isolate* isolate, v8::Handle<v8::Integer> integer) :
Ref<v8::Integer>(isolate, integer) {}
Integer(VALUE self) :
Ref<v8::Integer>(self) {}

View file

@ -5,8 +5,6 @@
namespace rr {
class Number : public Ref<v8::Number> {
public:
Number(v8::Isolate* isolate, double value) :
Ref<v8::Number>(isolate, v8::Number::New(isolate, value)) {}
Number(v8::Isolate* isolate, v8::Handle<v8::Value> value) :
Ref<v8::Number>(isolate, value.As<v8::Number>()) {}
Number(VALUE self) :
@ -16,7 +14,7 @@ namespace rr {
Isolate isolate(r_isolate);
Locker lock(isolate);
return Number(isolate, NUM2DBL(value));
return Number(isolate, v8::Number::New(isolate, NUM2DBL(value)));
}
static VALUE Value(VALUE self) {

View file

@ -35,11 +35,7 @@ namespace rr {
VALUE is_opaque; //option
};
struct Integer : public Equiv {
Integer(v8::Handle<v8::Integer> value) :
Equiv(INT2FIX(value->IntegerValue())) {
}
};
public:
static void Init();
@ -52,10 +48,10 @@ namespace rr {
ScriptOrigin(v8::Isolate* isolate, v8::ScriptOrigin origin) :
ScriptOrigin(new Container(
Value(isolate, origin.ResourceName()),
Integer(origin.ResourceLineOffset()),
Integer(origin.ResourceColumnOffset()),
Integer(isolate, origin.ResourceLineOffset()),
Integer(isolate, origin.ResourceColumnOffset()),
Bool(origin.Options().IsSharedCrossOrigin()),
Integer(origin.ScriptID()),
Integer(isolate, origin.ScriptID()),
Bool(origin.Options().IsEmbedderDebugScript()),
Value(isolate, origin.SourceMapUrl()),
Bool(origin.Options().IsOpaque()))) {

View file

@ -45,7 +45,7 @@ namespace rr {
store(&Class);
rb_gc_register_address(&Empty);
rb_gc_register_address(&Empty);
}
VALUE Value::IsUndefined(VALUE self) {

View file

@ -7,8 +7,8 @@ describe V8::C::Function do
fn = run '(function() { return "foo" })'
origin = fn.GetScriptOrigin()
expect(origin.ResourceName().ToString().Utf8Value()).to eql 'undefined'
expect(origin.ResourceLineOffset()).to eql 0
expect(origin.ResourceColumnOffset()).to eql 0
expect(origin.ResourceLineOffset().Value()).to eql 0
expect(origin.ResourceColumnOffset().Value()).to eql 0
end
it 'can be called' do