Skip to content
This repository was archived by the owner on Dec 4, 2023. It is now read-only.

Commit 712ad93

Browse files
committed
remove hacks around number usage
1 parent 18c0775 commit 712ad93

5 files changed

Lines changed: 10 additions & 18 deletions

File tree

ext/v8/integer.h

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,8 @@
55
namespace rr {
66
class Integer : public Ref<v8::Integer> {
77
public:
8-
Integer(v8::Isolate* isolate, int32_t value) :
9-
Ref<v8::Integer>(isolate, v8::Integer::New(isolate, value)) {}
10-
Integer(v8::Isolate* isolate, uint32_t value) :
11-
Ref<v8::Integer>(isolate, v8::Integer::NewFromUnsigned(isolate, value)) {}
8+
Integer(v8::Isolate* isolate, v8::Handle<v8::Integer> integer) :
9+
Ref<v8::Integer>(isolate, integer) {}
1210
Integer(VALUE self) :
1311
Ref<v8::Integer>(self) {}
1412

ext/v8/number.h

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
namespace rr {
66
class Number : public Ref<v8::Number> {
77
public:
8-
Number(v8::Isolate* isolate, double value) :
9-
Ref<v8::Number>(isolate, v8::Number::New(isolate, value)) {}
108
Number(v8::Isolate* isolate, v8::Handle<v8::Value> value) :
119
Ref<v8::Number>(isolate, value.As<v8::Number>()) {}
1210
Number(VALUE self) :
@@ -16,7 +14,7 @@ namespace rr {
1614
Isolate isolate(r_isolate);
1715
Locker lock(isolate);
1816

19-
return Number(isolate, NUM2DBL(value));
17+
return Number(isolate, v8::Number::New(isolate, NUM2DBL(value)));
2018
}
2119

2220
static VALUE Value(VALUE self) {

ext/v8/script-origin.h

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,7 @@ namespace rr {
3535
VALUE is_opaque; //option
3636

3737
};
38-
struct Integer : public Equiv {
39-
Integer(v8::Handle<v8::Integer> value) :
40-
Equiv(INT2FIX(value->IntegerValue())) {
41-
}
42-
};
38+
4339
public:
4440
static void Init();
4541

@@ -52,10 +48,10 @@ namespace rr {
5248
ScriptOrigin(v8::Isolate* isolate, v8::ScriptOrigin origin) :
5349
ScriptOrigin(new Container(
5450
Value(isolate, origin.ResourceName()),
55-
Integer(origin.ResourceLineOffset()),
56-
Integer(origin.ResourceColumnOffset()),
51+
Integer(isolate, origin.ResourceLineOffset()),
52+
Integer(isolate, origin.ResourceColumnOffset()),
5753
Bool(origin.Options().IsSharedCrossOrigin()),
58-
Integer(origin.ScriptID()),
54+
Integer(isolate, origin.ScriptID()),
5955
Bool(origin.Options().IsEmbedderDebugScript()),
6056
Value(isolate, origin.SourceMapUrl()),
6157
Bool(origin.Options().IsOpaque()))) {

ext/v8/value.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ namespace rr {
4545

4646
store(&Class);
4747

48-
rb_gc_register_address(&Empty);
48+
rb_gc_register_address(&Empty);
4949
}
5050

5151
VALUE Value::IsUndefined(VALUE self) {

spec/c/function_spec.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
fn = run '(function() { return "foo" })'
88
origin = fn.GetScriptOrigin()
99
expect(origin.ResourceName().ToString().Utf8Value()).to eql 'undefined'
10-
expect(origin.ResourceLineOffset()).to eql 0
11-
expect(origin.ResourceColumnOffset()).to eql 0
10+
expect(origin.ResourceLineOffset().Value()).to eql 0
11+
expect(origin.ResourceColumnOffset().Value()).to eql 0
1212
end
1313

1414
it 'can be called' do

0 commit comments

Comments
 (0)