@@ -25,9 +25,6 @@ zend_class_entry* php_v8_context_class_entry;
2525
2626static zend_object_handlers php_v8_context_object_handlers;
2727
28- v8::Local<v8::Context> php_v8_context_get_local (v8::Isolate *isolate, php_v8_context_t *php_v8_context) {
29- return v8::Local<v8::Context>::New (isolate, *php_v8_context->context );
30- };
3128
3229php_v8_context_t * php_v8_context_fetch_object (zend_object *obj) {
3330 return (php_v8_context_t *)((char *)obj - XtOffsetOf (php_v8_context_t , std));
@@ -115,14 +112,14 @@ static PHP_METHOD(V8Context, __construct)
115112 PHP_V8_FETCH_OBJECT_TEMPLATE_WITH_CHECK (php_v8_global_template_zv, php_v8_global_template);
116113 PHP_V8_DATA_ISOLATES_CHECK (php_v8_context, php_v8_global_template);
117114
118- global_template = php_v8_object_template_get_local (isolate, php_v8_global_template);
115+ global_template = php_v8_object_template_get_local (php_v8_global_template);
119116 }
120117
121118 if (php_v8_global_object_zv && Z_TYPE_P (php_v8_global_object_zv) != IS_NULL) {
122119 PHP_V8_VALUE_FETCH_WITH_CHECK (php_v8_global_object_zv, php_v8_global_object);
123120 PHP_V8_DATA_ISOLATES_CHECK (php_v8_context, php_v8_global_object);
124121
125- global_object = php_v8_value_get_value_local (isolate, php_v8_global_object);
122+ global_object = php_v8_value_get_local ( php_v8_global_object);
126123 }
127124
128125 v8::Local<v8::Context> context = v8::Context::New (isolate, extensions, global_template, global_object);
@@ -171,10 +168,9 @@ static PHP_METHOD(V8Context, DetachGlobal)
171168
172169 PHP_V8_CONTEXT_FETCH_WITH_CHECK (getThis (), php_v8_context);
173170 PHP_V8_ENTER_STORED_ISOLATE (php_v8_context);
171+ PHP_V8_DECLARE_CONTEXT (php_v8_context);
174172
175- v8::Local<v8::Context> local_context = php_v8_context_get_local (isolate, php_v8_context);
176-
177- local_context->DetachGlobal ();
173+ context->DetachGlobal ();
178174}
179175
180176static PHP_METHOD (V8Context, SetSecurityToken)
@@ -190,10 +186,11 @@ static PHP_METHOD(V8Context, SetSecurityToken)
190186
191187 PHP_V8_VALUE_FETCH_WITH_CHECK (php_v8_value_zv, php_v8_value);
192188
193- v8::Local<v8::Context> local_context = php_v8_context_get_local (isolate, php_v8_context);
194- v8::Local<v8::Value> local_token = php_v8_value_get_value_local (isolate, php_v8_value);
189+ PHP_V8_DECLARE_CONTEXT (php_v8_context);
195190
196- local_context->SetSecurityToken (local_token);
191+ v8::Local<v8::Value> local_token = php_v8_value_get_local (php_v8_value);
192+
193+ context->SetSecurityToken (local_token);
197194}
198195
199196static PHP_METHOD (V8Context, UseDefaultSecurityToken)
@@ -204,10 +201,9 @@ static PHP_METHOD(V8Context, UseDefaultSecurityToken)
204201
205202 PHP_V8_CONTEXT_FETCH_WITH_CHECK (getThis (), php_v8_context);
206203 PHP_V8_ENTER_STORED_ISOLATE (php_v8_context);
204+ PHP_V8_DECLARE_CONTEXT (php_v8_context);
207205
208- v8::Local<v8::Context> local_context = php_v8_context_get_local (isolate, php_v8_context);
209-
210- local_context->UseDefaultSecurityToken ();
206+ context->UseDefaultSecurityToken ();
211207}
212208
213209static PHP_METHOD (V8Context, GetSecurityToken)
@@ -221,8 +217,7 @@ static PHP_METHOD(V8Context, GetSecurityToken)
221217 PHP_V8_ENTER_STORED_ISOLATE (php_v8_context);
222218 PHP_V8_ENTER_CONTEXT (php_v8_context);
223219
224- v8::Local<v8::Context> local_context = php_v8_context_get_local (isolate, php_v8_context);
225- v8::Local<v8::Value> local_value = local_context->GetSecurityToken ();
220+ v8::Local<v8::Value> local_value = context->GetSecurityToken ();
226221
227222 php_v8_get_or_create_value (return_value, local_value, php_v8_context->php_v8_isolate );
228223}
@@ -237,9 +232,9 @@ static PHP_METHOD(V8Context, AllowCodeGenerationFromStrings)
237232
238233 PHP_V8_CONTEXT_FETCH_WITH_CHECK (getThis (), php_v8_context);
239234 PHP_V8_ENTER_STORED_ISOLATE (php_v8_context);
235+ PHP_V8_DECLARE_CONTEXT (php_v8_context);
240236
241- v8::Local<v8::Context> local_context = php_v8_context_get_local (isolate, php_v8_context);
242- local_context->AllowCodeGenerationFromStrings ((bool ) allow);
237+ context->AllowCodeGenerationFromStrings ((bool ) allow);
243238}
244239
245240static PHP_METHOD (V8Context, IsCodeGenerationFromStringsAllowed)
@@ -250,10 +245,9 @@ static PHP_METHOD(V8Context, IsCodeGenerationFromStringsAllowed)
250245
251246 PHP_V8_CONTEXT_FETCH_WITH_CHECK (getThis (), php_v8_context);
252247 PHP_V8_ENTER_STORED_ISOLATE (php_v8_context);
248+ PHP_V8_DECLARE_CONTEXT (php_v8_context);
253249
254- v8::Local<v8::Context> local_context = php_v8_context_get_local (isolate, php_v8_context);
255-
256- RETURN_BOOL (local_context->IsCodeGenerationFromStringsAllowed ());
250+ RETURN_BOOL (context->IsCodeGenerationFromStringsAllowed ());
257251}
258252
259253static PHP_METHOD (V8Context, SetErrorMessageForCodeGenerationFromStrings)
@@ -272,11 +266,9 @@ static PHP_METHOD(V8Context, SetErrorMessageForCodeGenerationFromStrings)
272266 PHP_V8_ENTER_STORED_ISOLATE (php_v8_context);
273267 PHP_V8_ENTER_CONTEXT (php_v8_context);
274268
275- v8::Local<v8::Context> local_context = php_v8_context_get_local (isolate, php_v8_context);
276-
277- v8::Local<v8::String> local_string = php_v8_value_get_string_local (isolate, php_v8_string);
269+ v8::Local<v8::String> local_string = php_v8_value_get_local_as<v8::String>(php_v8_string);
278270
279- local_context ->SetErrorMessageForCodeGenerationFromStrings (local_string);
271+ context ->SetErrorMessageForCodeGenerationFromStrings (local_string);
280272}
281273
282274static PHP_METHOD (V8Context, EstimatedSize)
@@ -290,9 +282,7 @@ static PHP_METHOD(V8Context, EstimatedSize)
290282 PHP_V8_ENTER_STORED_ISOLATE (php_v8_context);
291283 PHP_V8_ENTER_CONTEXT (php_v8_context);
292284
293- v8::Local<v8::Context> local_context = php_v8_context_get_local (isolate, php_v8_context);
294-
295- RETURN_LONG (local_context->EstimatedSize ());
285+ RETURN_LONG (context->EstimatedSize ());
296286}
297287
298288ZEND_BEGIN_ARG_INFO_EX (arginfo_v8_context___construct, ZEND_SEND_BY_VAL, ZEND_RETURN_VALUE, 1 )
0 commit comments