therubyracer-freebsd 0.10.1 → 0.11.1p2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. metadata +37 -109
  2. data/.gitignore +0 -13
  3. data/.rspec +0 -1
  4. data/.travis.yml +0 -8
  5. data/.yardopts +0 -1
  6. data/Changelog.md +0 -231
  7. data/Gemfile +0 -3
  8. data/README.md +0 -167
  9. data/Rakefile +0 -26
  10. data/bin/therubyracer +0 -11
  11. data/ext/v8/extconf.rb +0 -26
  12. data/ext/v8/rr.cpp +0 -189
  13. data/ext/v8/rr.h +0 -41
  14. data/ext/v8/v8.cpp +0 -48
  15. data/ext/v8/v8_array.cpp +0 -48
  16. data/ext/v8/v8_array.h +0 -8
  17. data/ext/v8/v8_callbacks.cpp +0 -81
  18. data/ext/v8/v8_callbacks.h +0 -8
  19. data/ext/v8/v8_context.cpp +0 -92
  20. data/ext/v8/v8_context.h +0 -6
  21. data/ext/v8/v8_date.cpp +0 -40
  22. data/ext/v8/v8_date.h +0 -6
  23. data/ext/v8/v8_debug.cpp +0 -17
  24. data/ext/v8/v8_debug.h +0 -6
  25. data/ext/v8/v8_exception.cpp +0 -133
  26. data/ext/v8/v8_exception.h +0 -11
  27. data/ext/v8/v8_external.cpp +0 -70
  28. data/ext/v8/v8_external.h +0 -8
  29. data/ext/v8/v8_function.cpp +0 -69
  30. data/ext/v8/v8_function.h +0 -11
  31. data/ext/v8/v8_handle.cpp +0 -186
  32. data/ext/v8/v8_handle.h +0 -48
  33. data/ext/v8/v8_locker.cpp +0 -139
  34. data/ext/v8/v8_locker.h +0 -6
  35. data/ext/v8/v8_message.cpp +0 -67
  36. data/ext/v8/v8_message.h +0 -10
  37. data/ext/v8/v8_object.cpp +0 -122
  38. data/ext/v8/v8_object.h +0 -10
  39. data/ext/v8/v8_script.cpp +0 -36
  40. data/ext/v8/v8_script.h +0 -8
  41. data/ext/v8/v8_string.cpp +0 -52
  42. data/ext/v8/v8_string.h +0 -9
  43. data/ext/v8/v8_template.cpp +0 -344
  44. data/ext/v8/v8_template.h +0 -8
  45. data/ext/v8/v8_try_catch.cpp +0 -70
  46. data/ext/v8/v8_try_catch.h +0 -5
  47. data/ext/v8/v8_v8.cpp +0 -34
  48. data/ext/v8/v8_v8.h +0 -6
  49. data/ext/v8/v8_value.cpp +0 -175
  50. data/ext/v8/v8_value.h +0 -10
  51. data/ext/v8/v8_weakref.cpp +0 -61
  52. data/ext/v8/v8_weakref.h +0 -29
  53. data/lib/v8/access.rb +0 -92
  54. data/lib/v8/array.rb +0 -17
  55. data/lib/v8/c/locker.rb +0 -18
  56. data/lib/v8/cli.rb +0 -133
  57. data/lib/v8/context.rb +0 -111
  58. data/lib/v8/error.rb +0 -130
  59. data/lib/v8/function.rb +0 -44
  60. data/lib/v8/object.rb +0 -69
  61. data/lib/v8/portal/caller.rb +0 -37
  62. data/lib/v8/portal/constructor.rb +0 -98
  63. data/lib/v8/portal/function.rb +0 -63
  64. data/lib/v8/portal/interceptors.rb +0 -152
  65. data/lib/v8/portal/proxies.rb +0 -151
  66. data/lib/v8/portal/templates.rb +0 -73
  67. data/lib/v8/portal.rb +0 -86
  68. data/lib/v8/stack.rb +0 -66
  69. data/lib/v8/tap.rb +0 -9
  70. data/lib/v8/version.rb +0 -3
  71. data/lib/v8.rb +0 -23
  72. data/spec/ext/array_spec.rb +0 -15
  73. data/spec/ext/cxt_spec.rb +0 -57
  74. data/spec/ext/ext_spec_helper.rb +0 -27
  75. data/spec/ext/func_spec.rb +0 -64
  76. data/spec/ext/object_spec.rb +0 -10
  77. data/spec/ext/string_spec.rb +0 -11
  78. data/spec/ext/try_catch_spec.rb +0 -60
  79. data/spec/redjs_spec.rb +0 -9
  80. data/spec/spec_helper.rb +0 -9
  81. data/spec/v8/error_spec.rb +0 -131
  82. data/spec/v8/portal/proxies_spec.rb +0 -106
  83. data/specmem/handle_memspec.rb +0 -41
  84. data/specmem/object_memspec.rb +0 -14
  85. data/specmem/proxies_memspec.rb +0 -49
  86. data/specmem/spec_helper.rb +0 -24
  87. data/specthread/spec_helper.rb +0 -2
  88. data/specthread/threading_spec.rb +0 -13
  89. data/thefrontside.png +0 -0
  90. data/therubyracer.gemspec +0 -27
data/ext/v8/extconf.rb DELETED
@@ -1,26 +0,0 @@
1
- require 'mkmf'
2
- require 'set'
3
- begin
4
- require 'libv8'
5
- rescue LoadError
6
- require 'rubygems'
7
- require 'libv8'
8
- end
9
-
10
- have_library('objc') if RUBY_PLATFORM =~ /darwin/
11
-
12
- #we have to manually prepend the libv8 include path to INCFLAGS
13
- #since find_header() does not actually work as advertized.
14
- #see https://github.com/cowboyd/therubyracer/issues/91
15
- $INCFLAGS.insert 0, "-I#{Libv8.include_path} "
16
-
17
- $CPPFLAGS += " -Wall" unless $CPPFLAGS.split.include? "-Wall"
18
- $CPPFLAGS += " -g" unless $CPPFLAGS.split.include? "-g"
19
- $CPPFLAGS += " -rdynamic" unless $CPPFLAGS.split.include? "-rdynamic"
20
-
21
- $LDFLAGS.insert 0, "#{Libv8.library_path}/libv8.#{$LIBEXT} "
22
- $LIBS << ' -lpthread'
23
-
24
- CONFIG['LDSHARED'] = '$(CXX) -shared' unless RUBY_PLATFORM =~ /darwin/
25
-
26
- create_makefile('v8')
data/ext/v8/rr.cpp DELETED
@@ -1,189 +0,0 @@
1
- #include "rr.h"
2
- #include "v8_context.h"
3
- #include "v8_handle.h"
4
- #include "v8_value.h"
5
- #include "v8_object.h"
6
- #include "v8_function.h"
7
- #include "v8_array.h"
8
- #include "v8_string.h"
9
- #include "v8_date.h"
10
- #include "v8_message.h"
11
- #include "v8_external.h"
12
- #include "v8_exception.h"
13
-
14
- using namespace v8;
15
-
16
- VALUE rr_define_class(const char *name, VALUE superclass) {
17
- VALUE V8 = rb_define_module("V8");
18
- VALUE V8_C = rb_define_module_under(V8, "C");
19
- VALUE klass = rb_define_class_under(V8_C, name, superclass);
20
- rb_funcall(klass, rb_intern("private_class_method"), 1, rb_str_new2("new"));
21
- return klass;
22
- }
23
-
24
- VALUE rr_define_module(const char *name) {
25
- VALUE V8 = rb_define_module("V8");
26
- VALUE V8_C = rb_define_module_under(V8, "C");
27
- return rb_define_module_under(V8_C, name);
28
- }
29
-
30
- VALUE rr_define_const(const char *name, VALUE value) {
31
- VALUE V8 = rb_define_module("V8");
32
- VALUE V8_C = rb_define_module_under(V8, "C");
33
- rb_define_const(V8_C, name, value);
34
- return value;
35
- }
36
-
37
- VALUE rr_const_get(const char *name) {
38
- VALUE V8 = rb_define_module("V8");
39
- VALUE V8_C = rb_define_module_under(V8, "C");
40
- return rb_const_get(V8_C, rb_intern(name));
41
- }
42
-
43
- VALUE rr_define_finalizer(VALUE object, void* finalizer, VALUE data) {
44
- VALUE finalizer_proc = rb_proc_new((VALUE (*)(...))finalizer, data);
45
- rb_iv_set(finalizer_proc, "data", data);
46
- VALUE ospace = rb_const_get(rb_cObject, rb_intern("ObjectSpace"));
47
- rb_funcall(ospace, rb_intern("define_finalizer"), 2, object, finalizer_proc);
48
- }
49
-
50
- VALUE rr_v82rb(Handle<Value> value) {
51
- if (value.IsEmpty()) {
52
- return rr_v8_value_empty();
53
- }
54
- if (value->IsUndefined() || value->IsNull()) {
55
- return Qnil;
56
- }
57
- if (value->IsExternal()) {
58
- return rr_reflect_v8_external(value);
59
- }
60
- if (value->IsUint32()) {
61
- return UINT2NUM(value->Uint32Value());
62
- }
63
- if (value->IsInt32()) {
64
- return INT2FIX(value->Int32Value());
65
- }
66
- if (value->IsBoolean()) {
67
- return value->BooleanValue() ? Qtrue : Qfalse;
68
- }
69
- if (value->IsNumber()) {
70
- return rb_float_new(value->NumberValue());
71
- }
72
- if (value->IsString()) {
73
- return rr_reflect_v8_string(value);
74
- }
75
- if (value->IsFunction()) {
76
- return rr_reflect_v8_function(value);
77
- }
78
- if (value->IsArray()) {
79
- return rr_reflect_v8_array(value);
80
- }
81
- if (value->IsDate()) {
82
- return rr_reflect_v8_date(value);
83
- }
84
- if (value->IsObject()) {
85
- return rr_reflect_v8_object(value);
86
- }
87
- return rr_wrap_v8_value(value);
88
- }
89
-
90
- VALUE rr_v82rb(Handle<Message> value) {
91
- return rr_reflect_v8_message(value);
92
- }
93
- VALUE rr_v82rb(Handle<StackTrace> value) {
94
- return rr_reflect_v8_stacktrace(value);
95
- }
96
- VALUE rr_v82rb(Handle<StackFrame> value) {
97
- return rr_reflect_v8_stackframe(value);
98
- }
99
-
100
- VALUE rr_v82rb(Handle<Boolean> value) {
101
- return rr_v82rb((Handle<Value>)value);
102
- }
103
- VALUE rr_v82rb(Handle<Number> value) {
104
- return rr_v82rb((Handle<Value>)value);
105
- }
106
- VALUE rr_v82rb(Handle<String> value) {
107
- return rr_v82rb((Handle<Value>)value);
108
- }
109
- VALUE rr_v82rb(Handle<Object> value) {
110
- return rr_v82rb((Handle<Value>)value);
111
- }
112
- VALUE rr_v82rb(Handle<Array> value) {
113
- return rr_v82rb((Handle<Value>)value);
114
- }
115
- VALUE rr_v82rb(v8::Handle<v8::Function> value) {
116
- return rr_v82rb((Handle<Value>)value);
117
- }
118
- VALUE rr_v82rb(Handle<Integer> value) {
119
- return rr_v82rb((Handle<Value>)value);
120
- }
121
- VALUE rr_v82rb(Handle<Uint32> value) {
122
- return rr_v82rb((Handle<Value>)value);
123
- }
124
- VALUE rr_v82rb(Handle<Int32> value) {
125
- return rr_v82rb((Handle<Value>)value);
126
- }
127
- VALUE rr_v82rb(bool value) {
128
- return value ? Qtrue : Qfalse;
129
- }
130
- VALUE rr_v82rb(double value) {
131
- return rb_float_new(value);
132
- }
133
- VALUE rr_v82rb(int64_t value) {
134
- return LONG2NUM(value);
135
- }
136
- VALUE rr_v82rb(uint32_t value) {
137
- return UINT2NUM(value);
138
- }
139
- VALUE rr_v82rb(int32_t value) {
140
- return INT2FIX(value);
141
- }
142
-
143
- Handle<Value> rr_rb2v8(VALUE value) {
144
- switch (TYPE(value)) {
145
- case T_FIXNUM:
146
- // TODO: use this conversion if value will fit in 32 bits.
147
- // return Integer::New(FIX2LONG(value));
148
- case T_FLOAT:
149
- return Number::New(NUM2DBL(value));
150
- case T_STRING:
151
- return String::New(RSTRING_PTR(value), RSTRING_LEN(value));
152
- case T_NIL:
153
- return Null();
154
- case T_TRUE:
155
- return True();
156
- case T_FALSE:
157
- return False();
158
- case T_DATA:
159
- return rr_v8_handle<Value>(value);
160
- case T_OBJECT:
161
- case T_CLASS:
162
- case T_ICLASS:
163
- case T_MODULE:
164
- case T_REGEXP:
165
- case T_MATCH:
166
- case T_ARRAY:
167
- case T_HASH:
168
- case T_STRUCT:
169
- case T_BIGNUM:
170
- case T_FILE:
171
- case T_SYMBOL:
172
- // case T_BLKTAG: (not in 1.9)
173
- case T_UNDEF:
174
- // case T_VARMAP: (not in 1.9)
175
- // case T_SCOPE: (not in 1.9)
176
- case T_NODE:
177
- default:
178
- rb_warn("unknown conversion to V8 for: %s", RSTRING_PTR(rb_inspect(value)));
179
- return String::New("Undefined Conversion");
180
- }
181
-
182
- return Undefined();
183
- }
184
- // VALUE rr_v82rb(v8::ScriptData *data) {
185
- // return rr_thunk(rr_wrap_script_data(data));
186
- // }
187
-
188
-
189
-
data/ext/v8/rr.h DELETED
@@ -1,41 +0,0 @@
1
- #ifndef _THE_RUBY_RACER_
2
- #define _THE_RUBY_RACER_
3
-
4
- #include <ruby.h>
5
- #include <v8.h>
6
-
7
- #define rr_define_method(klass, name, impl, argc) rb_define_method(klass, name, (VALUE(*)(...))impl, argc)
8
- #define rr_define_singleton_method(object, name, impl, argc) rb_define_singleton_method(object, name, (VALUE(*)(...))impl, argc)
9
-
10
- VALUE rr_define_class(const char *name, VALUE superclass = rb_cObject);
11
- VALUE rr_define_module(const char *name);
12
- VALUE rr_define_const(const char *name, VALUE value);
13
- VALUE rr_const_get(const char *name);
14
- VALUE rr_define_finalizer(VALUE object, void* finalizer, VALUE data);
15
-
16
- extern "C" VALUE rb_proc_new(VALUE (*)(ANYARGS/* VALUE yieldarg[, VALUE procarg] */), VALUE);
17
-
18
-
19
- VALUE rr_v82rb(v8::Handle<v8::Value> value);
20
- VALUE rr_v82rb(v8::Handle<v8::Boolean> value);
21
- VALUE rr_v82rb(v8::Handle<v8::Number> value);
22
- VALUE rr_v82rb(v8::Handle<v8::String> value);
23
- VALUE rr_v82rb(v8::Handle<v8::Object> value);
24
- VALUE rr_v82rb(v8::Handle<v8::Array> value);
25
- VALUE rr_v82rb(v8::Handle<v8::Function> value);
26
- VALUE rr_v82rb(v8::Handle<v8::Integer> value);
27
- VALUE rr_v82rb(v8::Handle<v8::Uint32> value);
28
- VALUE rr_v82rb(v8::Handle<v8::Int32> value);
29
- VALUE rr_v82rb(v8::Handle<v8::Message> value);
30
- VALUE rr_v82rb(v8::Handle<v8::StackTrace> value);
31
- VALUE rr_v82rb(v8::Handle<v8::StackFrame> value);
32
-
33
- VALUE rr_v82rb(bool value);
34
- VALUE rr_v82rb(double value);
35
- VALUE rr_v82rb(int64_t value);
36
- VALUE rr_v82rb(uint32_t value);
37
- VALUE rr_v82rb(int32_t value);
38
-
39
- v8::Handle<v8::Value> rr_rb2v8(VALUE value);
40
-
41
- #endif
data/ext/v8/v8.cpp DELETED
@@ -1,48 +0,0 @@
1
- #include "v8_handle.h"
2
- #include "v8_context.h"
3
- #include "v8_value.h"
4
- #include "v8_string.h"
5
- #include "v8_object.h"
6
- #include "v8_array.h"
7
- #include "v8_message.h"
8
- #include "v8_function.h"
9
- #include "v8_date.h"
10
- #include "v8_script.h"
11
- #include "v8_template.h"
12
- #include "v8_try_catch.h"
13
- #include "v8_callbacks.h"
14
- #include "v8_external.h"
15
- #include "v8_exception.h"
16
- #include "v8_locker.h"
17
- #include "v8_debug.h"
18
- #include "v8_v8.h"
19
-
20
- #include <stdio.h>
21
-
22
- extern "C" {
23
- void Init_v8();
24
- }
25
-
26
- extern "C" {
27
- void Init_v8() {
28
- v8::Locker locker;
29
- rr_init_handle();
30
- rr_init_context();
31
- rr_init_value();
32
- rr_init_string();
33
- rr_init_script();
34
- rr_init_template();
35
- rr_init_object();
36
- rr_init_function();
37
- rr_init_v8_array();
38
- rr_init_v8_date();
39
- rr_init_message();
40
- rr_init_v8_try_catch();
41
- rr_init_v8_callbacks();
42
- rr_init_v8_external();
43
- rr_init_v8_exception();
44
- rr_init_v8_locker();
45
- rr_init_v8_debug();
46
- rr_init_v8_v8();
47
- }
48
- }
data/ext/v8/v8_array.cpp DELETED
@@ -1,48 +0,0 @@
1
- #include "v8_handle.h"
2
- #include "v8_array.h"
3
- #include "v8_object.h"
4
-
5
- using namespace v8;
6
-
7
-
8
- namespace {
9
-
10
- VALUE ArrayClass;
11
-
12
- Persistent<Array>& unwrap(VALUE self) {
13
- return rr_v8_handle<Array>(self);
14
- }
15
-
16
- VALUE New(int argc, VALUE *argv, VALUE self) {
17
- if (!Context::InContext()) {
18
- rb_raise(rb_eScriptError, "must be in a context to call Array::New()");
19
- return Qnil;
20
- }
21
- VALUE length;
22
- rb_scan_args(argc, argv, "01", &length);
23
- if (NIL_P(length)) {
24
- length = INT2FIX(0);
25
- }
26
- HandleScope scope;
27
- return rr_v8_handle_new(self, Array::New(NUM2INT(length)));
28
- }
29
-
30
- VALUE Length(VALUE self) {
31
- return rr_v82rb(unwrap(self)->Length());
32
- }
33
-
34
- VALUE CloneElementAt(VALUE self, VALUE index) {
35
- return rr_v82rb(unwrap(self)->CloneElementAt(NUM2UINT(index)));
36
- }
37
- }
38
-
39
- void rr_init_v8_array() {
40
- ArrayClass = rr_define_class("Array", rr_v8_object_class());
41
- rr_define_singleton_method(ArrayClass, "New", New, -1);
42
- rr_define_method(ArrayClass, "Length", Length, 0);
43
- rr_define_method(ArrayClass, "CloneElementAt", CloneElementAt, 1);
44
- }
45
-
46
- VALUE rr_reflect_v8_array(Handle<Value> value) {
47
- return rr_reflect_v8_object_as(value, ArrayClass);
48
- }
data/ext/v8/v8_array.h DELETED
@@ -1,8 +0,0 @@
1
- #ifndef _RR_V8_ARRAY_
2
- #define _RR_V8_ARRAY_
3
-
4
- #include "rr.h"
5
-
6
- void rr_init_v8_array();
7
- VALUE rr_reflect_v8_array(v8::Handle<v8::Value> value);
8
- #endif
@@ -1,81 +0,0 @@
1
- #include "v8_callbacks.h"
2
- #include "rr.h"
3
-
4
- using namespace v8;
5
-
6
-
7
- namespace {
8
- VALUE ArgumentsClass;
9
- VALUE AccessorInfoClass;
10
-
11
- VALUE _Data(VALUE self) {
12
- return rb_iv_get(self, "data");
13
- }
14
-
15
- namespace Accessor {
16
- AccessorInfo *info(VALUE value) {
17
- AccessorInfo* i = 0;
18
- Data_Get_Struct(value, class AccessorInfo, i);
19
- return i;
20
- }
21
- VALUE This(VALUE self) {
22
- return rr_v82rb(info(self)->This());
23
- }
24
- VALUE Holder(VALUE self) {
25
- return rr_v82rb(info(self)->Holder());
26
- }
27
- }
28
-
29
- namespace Args {
30
- Arguments* args(VALUE value) {
31
- Arguments *arguments = 0;
32
- Data_Get_Struct(value, class Arguments, arguments);
33
- return arguments;
34
- }
35
- VALUE This(VALUE self) {
36
- return rr_v82rb(args(self)->This());
37
- }
38
-
39
- VALUE Holder(VALUE self) {
40
- return rr_v82rb(args(self)->Holder());
41
- }
42
-
43
- VALUE Length(VALUE self) {
44
- return rr_v82rb(args(self)->Length());
45
- }
46
- VALUE Get(VALUE self, VALUE index) {
47
- int i = NUM2INT(index);
48
- return rr_v82rb((*args(self))[i]);
49
- }
50
- VALUE Callee(VALUE self) {
51
- return rr_v82rb(args(self)->Callee());
52
- }
53
- VALUE IsConstructCall(VALUE self) {
54
- return rr_v82rb(args(self)->IsConstructCall());
55
- }
56
- }
57
-
58
- }
59
-
60
- void rr_init_v8_callbacks() {
61
- AccessorInfoClass = rr_define_class("AccessorInfo");
62
- rr_define_method(AccessorInfoClass, "This", Accessor::This, 0);
63
- rr_define_method(AccessorInfoClass, "Holder", Accessor::Holder, 0);
64
- rr_define_method(AccessorInfoClass, "Data", _Data, 0);
65
-
66
- ArgumentsClass = rr_define_class("Arguments");
67
- rr_define_method(ArgumentsClass, "This", Args::This, 0);
68
- rr_define_method(ArgumentsClass, "Holder", Args::Holder, 0);
69
- rr_define_method(ArgumentsClass, "Data", _Data, 0);
70
- rr_define_method(ArgumentsClass, "Length", Args::Length, 0);
71
- rr_define_method(ArgumentsClass, "Callee", Args::Callee, 0);
72
- rr_define_method(ArgumentsClass, "IsConstructCall", Args::IsConstructCall, 0);
73
- rr_define_method(ArgumentsClass, "[]", Args::Get, 1);
74
- }
75
-
76
- VALUE rr_v82rb(const AccessorInfo& info) {
77
- return Data_Wrap_Struct(AccessorInfoClass, 0, 0, (void*)&info);
78
- }
79
- VALUE rr_v82rb(const Arguments& arguments) {
80
- return Data_Wrap_Struct(ArgumentsClass, 0, 0, (void*)&arguments);
81
- }
@@ -1,8 +0,0 @@
1
- #ifndef _RR_V8_CALLBACKS_
2
- #define _RR_V8_CALLBACKS_
3
- #include "rr.h"
4
- void rr_init_v8_callbacks();
5
- VALUE rr_v82rb(const v8::AccessorInfo& info);
6
- VALUE rr_v82rb(const v8::Arguments& arguments);
7
-
8
- #endif
@@ -1,92 +0,0 @@
1
- #include "rr.h"
2
- #include "v8_handle.h"
3
- #include "v8_context.h"
4
- #include "v8_message.h"
5
- #include "v8_template.h"
6
- #include "v8_external.h"
7
-
8
- using namespace v8;
9
-
10
- namespace {
11
-
12
- VALUE ContextClass;
13
-
14
- Persistent<Context>& unwrap(VALUE value) {
15
- return rr_v8_handle<Context>(value);
16
- }
17
-
18
- VALUE New(int argc, VALUE *argv, VALUE self) {
19
- HandleScope handles;
20
- VALUE global_template; VALUE global_object;
21
- rb_scan_args(argc,argv, "02", &global_template, &global_object);
22
- Handle<ObjectTemplate> v8_global_template(NIL_P(global_template) ? Handle<ObjectTemplate>() : rr_v8_handle<ObjectTemplate>(global_template));
23
- Handle<Value> v8_global_object(NIL_P(global_object) ? Handle<Value>() : rr_v8_handle<Value>(global_object));
24
- Persistent<Context> cxt(Context::New(0, v8_global_template, v8_global_object));
25
- VALUE ref = rr_v8_handle_new(self, cxt);
26
- cxt.Dispose();
27
- return ref;
28
- }
29
-
30
- VALUE InContext(VALUE self) {
31
- return Context::InContext() ? Qtrue : Qfalse;
32
- }
33
-
34
- VALUE GetEntered(VALUE self) {
35
- HandleScope handles;
36
- if (Context::InContext()) {
37
- Local<Context> current = Context::GetEntered();
38
- return rr_v8_handle_new(self, current);
39
- } else {
40
- return Qnil;
41
- }
42
- }
43
-
44
- VALUE Global(VALUE self) {
45
- HandleScope handles;
46
- return rr_v82rb(unwrap(self)->Global());
47
- }
48
-
49
- VALUE Enter(VALUE self) {
50
- HandleScope handles;
51
- unwrap(self)->Enter();
52
- return self;
53
- }
54
-
55
- VALUE Exit(VALUE self) {
56
- HandleScope handles;
57
- unwrap(self)->Exit();
58
- return self;
59
- }
60
-
61
- VALUE IsEntered(VALUE self) {
62
- HandleScope handles;
63
- if (Context::InContext()) {
64
- return rr_v82rb(unwrap(self) == Context::GetEntered());
65
- } else {
66
- return Qfalse;
67
- }
68
- }
69
- VALUE GetData(VALUE self) {
70
- HandleScope scope;
71
- return rr_v82rb(unwrap(self)->GetData());
72
- }
73
- VALUE SetData(VALUE self, VALUE data) {
74
- HandleScope scope;
75
- unwrap(self)->SetData(rr_rb2v8(data)->ToString());
76
- return Qnil;
77
- }
78
- }
79
-
80
- void rr_init_context() {
81
- ContextClass = rr_define_class("Context", rr_v8_handle_class());
82
- rr_define_singleton_method(ContextClass, "New", New, -1);
83
- rr_define_singleton_method(ContextClass, "InContext", InContext, 0);
84
- rr_define_singleton_method(ContextClass, "GetEntered", GetEntered, 0);
85
- rr_define_method(ContextClass, "Global", Global, 0);
86
- rr_define_method(ContextClass, "Enter", Enter, 0);
87
- rr_define_method(ContextClass, "Exit", Exit, 0);
88
- rr_define_method(ContextClass, "IsEntered", IsEntered, 0);
89
- rr_define_method(ContextClass, "GetData", GetData, 0);
90
- rr_define_method(ContextClass, "SetData", SetData, 1);
91
- }
92
-
data/ext/v8/v8_context.h DELETED
@@ -1,6 +0,0 @@
1
- #ifndef _RUBY_V8_CXT_
2
- #define _RUBY_V8_CXT_
3
-
4
- void rr_init_context();
5
-
6
- #endif
data/ext/v8/v8_date.cpp DELETED
@@ -1,40 +0,0 @@
1
- #include "rr.h"
2
- #include "v8_date.h"
3
- #include "v8_value.h"
4
- #include "v8_handle.h"
5
- #include "v8_object.h"
6
-
7
- using namespace v8;
8
-
9
- namespace {
10
-
11
- VALUE DateClass;
12
-
13
- VALUE New(VALUE self, VALUE time) {
14
- HandleScope scope;
15
- return rr_v8_handle_new(self, Date::New(NUM2DBL(time)));
16
- }
17
-
18
- // Override Value::NumberValue in order to ensure that we call the more specific and optimized
19
- // Number Value in v8::Date
20
- VALUE NumberValue(VALUE self) {
21
- Persistent<Date> date = rr_v8_handle<Date>(self);
22
- return rr_v82rb(date->NumberValue());
23
- }
24
-
25
- VALUE DateTimeConfigurationChangeNotification(VALUE self) {
26
- Date::DateTimeConfigurationChangeNotification();
27
- return Qnil;
28
- }
29
- }
30
-
31
- void rr_init_v8_date() {
32
- DateClass = rr_define_class("Date", rr_v8_value_class());
33
- rr_define_singleton_method(DateClass, "New", New, 1);
34
- rr_define_singleton_method(DateClass, "DateTimeConfigurationChangeNotification", DateTimeConfigurationChangeNotification, 0);
35
- rr_define_method(DateClass, "NumberValue", NumberValue, 0);
36
- }
37
-
38
- VALUE rr_reflect_v8_date(Handle<Value> value) {
39
- return rr_reflect_v8_object_as(Handle<Object>::Cast(value), DateClass);
40
- }
data/ext/v8/v8_date.h DELETED
@@ -1,6 +0,0 @@
1
- #ifndef _RR_V8_DATE_
2
- #define _RR_V8_DATE_
3
-
4
- void rr_init_v8_date();
5
- VALUE rr_reflect_v8_date(v8::Handle<v8::Value> value);
6
- #endif
data/ext/v8/v8_debug.cpp DELETED
@@ -1,17 +0,0 @@
1
- #include "rr.h"
2
- #include "v8_debug.h"
3
- #include "v8-debug.h"
4
-
5
- using namespace v8;
6
-
7
- namespace {
8
-
9
- VALUE EnableAgent(VALUE self, VALUE application_name, VALUE port) {
10
- return rr_v82rb(v8::Debug::EnableAgent(RSTRING_PTR(application_name), NUM2INT(port), false));
11
- }
12
- }
13
-
14
- void rr_init_v8_debug() {
15
- VALUE DebugModule = rr_define_module("Debug");
16
- rr_define_singleton_method(DebugModule, "EnableAgent", EnableAgent, 2);
17
- }
data/ext/v8/v8_debug.h DELETED
@@ -1,6 +0,0 @@
1
- #ifndef _RR_V8_DEBUG_
2
- #define _RR_V8_DEBUG_
3
-
4
- void rr_init_v8_debug();
5
-
6
- #endif