Lines Matching refs:Handle
239 bool Isolate::IsDeferredHandle(Object** handle) {
244 // We iterate through all the blocks to see whether the argument handle
253 if (blocks->at(i) <= handle && handle < block_limit) return true;
272 Handle<String> Isolate::StackTraceString() {
280 Handle<String> stack_trace = accumulator.ToString(this);
303 Handle<String> trace = StackTraceString();
342 Handle<Object> Isolate::CaptureSimpleStackTrace(Handle<JSObject> error_object,
343 Handle<Object> caller) {
345 Handle<JSObject> error = error_function();
346 Handle<String> stackTraceLimit =
349 Handle<Object> stack_trace_limit =
356 Handle<FixedArray> elements =
376 Handle<JSFunction> fun = frames[i].function();
377 Handle<Object> recv = frames[i].receiver();
384 Handle<FixedArray> new_elements =
393 Handle<Code> code = frames[i].code();
394 Handle<Smi> offset(Smi::FromInt(frames[i].offset()), this);
415 Handle<JSArray> result = factory()->NewJSArrayWithElements(elements);
423 Handle<JSObject> error_object) {
426 Handle<Name> key = factory()->detailed_stack_trace_symbol();
427 Handle<JSArray> stack_trace = CaptureCurrentStackTrace(
439 Handle<JSObject> error_object, Handle<Object> caller) {
441 Handle<Name> key = factory()->stack_trace_symbol();
442 Handle<Object> stack_trace = CaptureSimpleStackTrace(error_object, caller);
450 Handle<JSArray> Isolate::GetDetailedStackTrace(Handle<JSObject> error_object) {
451 Handle<Name> key_detailed = factory()->detailed_stack_trace_symbol();
452 Handle<Object> stack_trace =
454 if (stack_trace->IsJSArray()) return Handle<JSArray>::cast(stack_trace);
456 if (!capture_stack_trace_for_uncaught_exceptions_) return Handle<JSArray>();
459 Handle<JSArray> detailed_stack_trace =
509 Handle<JSObject> NewStackFrameObject(Handle<JSFunction> fun, int position,
511 Handle<JSObject> stack_frame =
514 Handle<Script> script(Script::cast(fun->shared()->script()));
522 Handle<FixedArray> line_ends(FixedArray::cast(script->line_ends()));
532 handle(Smi::FromInt(column_offset + 1), isolate_),
536 handle(Smi::FromInt(line_number + 1), isolate_),
542 handle(Smi::FromInt(script->id()), isolate_), NONE);
547 handle(script->name(), isolate_), NONE);
551 Handle<Object> result = Script::GetNameOrSourceURL(script);
557 Handle<Object> fun_name = JSFunction::GetDebugName(fun);
562 Handle<Object> is_eval = factory()->ToBoolean(
568 Handle<Object> is_constructor_obj = factory()->ToBoolean(is_constructor);
580 Handle<String> column_key_;
581 Handle<String> line_key_;
582 Handle<String> script_id_key_;
583 Handle<String> script_name_key_;
584 Handle<String> script_name_or_source_url_key_;
585 Handle<String> function_key_;
586 Handle<String> eval_key_;
587 Handle<String> constructor_key_;
591 int PositionFromStackTrace(Handle<FixedArray> elements, int index) {
604 Handle<JSArray> Isolate::GetDetailedFromSimpleStackTrace(
605 Handle<JSObject> error_object) {
606 Handle<Name> key = factory()->stack_trace_symbol();
607 Handle<Object> property = JSReceiver::GetDataProperty(error_object, key);
608 if (!property->IsJSArray()) return Handle<JSArray>();
609 Handle<JSArray> simple_stack_trace = Handle<JSArray>::cast(property);
615 Handle<FixedArray> elements(FixedArray::cast(simple_stack_trace->elements()));
621 Handle<JSArray> stack_trace = factory()->NewJSArray(frame_limit);
623 Handle<Object> recv = handle(elements->get(i), this);
624 Handle<JSFunction> fun =
625 handle(JSFunction::cast(elements->get(i + 1)), this);
628 Handle<JSObject>::cast(recv)->map()->GetConstructor() == *fun;
631 Handle<JSObject> stack_frame =
643 Handle<JSArray> Isolate::CaptureCurrentStackTrace(
649 Handle<JSArray> stack_trace = factory()->NewJSArray(frame_limit);
660 Handle<JSFunction> fun = frames[i].function();
665 Handle<JSObject> stack_frame =
741 Handle<JSObject> receiver) {
755 void Isolate::ReportFailedAccessCheck(Handle<JSObject> receiver) {
765 Handle<Object> data;
773 data = handle(access_check_info->data(), this);
783 bool Isolate::IsInternallyUsedPropertyName(Handle<Object> name) {
785 return Handle<Symbol>::cast(name)->is_private();
791 bool Isolate::MayAccess(Handle<Context> accessing_context,
792 Handle<JSObject> receiver) {
809 // avoid using Isolate::native_context() because it uses Handle.
821 Handle<Object> data;
833 data = handle(access_check_info->data(), this);
846 Handle<Object> key = factory()->undefined_value();
862 Handle<Object> exception;
868 Handle<JSObject> boilerplate = stack_overflow_boilerplate();
869 Handle<JSObject> copy = factory()->CopyJSObject(boilerplate);
931 void ReportBootstrappingException(Handle<Object> exception,
963 Handle<String> src(String::cast(location->script()->source()));
990 Handle<Object> exception_handle(exception, this);
1026 Handle<Object> message_obj = CreateMessage(exception_handle, location);
1267 Handle<Object> pos_obj(Smi::FromInt(pos), this);
1269 Handle<JSFunction> fun(frame->function());
1270 Handle<Object> recv(frame->receiver(), this);
1274 Handle<Object> is_top_level = factory()->ToBoolean(it.done());
1276 Handle<String> line =
1294 Handle<Script> casted_script(Script::cast(script));
1302 *target = MessageLocation(casted_script, pos, pos + 1, handle(fun));
1311 Handle<Object> exception) {
1314 Handle<Name> start_pos_symbol = factory()->error_start_pos_symbol();
1315 Handle<Object> start_pos = JSReceiver::GetDataProperty(
1316 Handle<JSObject>::cast(exception), start_pos_symbol);
1318 int start_pos_value = Handle<Smi>::cast(start_pos)->value();
1320 Handle<Name> end_pos_symbol = factory()->error_end_pos_symbol();
1321 Handle<Object> end_pos = JSReceiver::GetDataProperty(
1322 Handle<JSObject>::cast(exception), end_pos_symbol);
1324 int end_pos_value = Handle<Smi>::cast(end_pos)->value();
1326 Handle<Name> script_symbol = factory()->error_script_symbol();
1327 Handle<Object> script = JSReceiver::GetDataProperty(
1328 Handle<JSObject>::cast(exception), script_symbol);
1331 Handle<Script> cast_script(Script::cast(*script));
1338 Handle<Object> exception) {
1340 Handle<Name> key = factory()->stack_trace_symbol();
1341 Handle<Object> property =
1342 JSReceiver::GetDataProperty(Handle<JSObject>::cast(exception), key);
1344 Handle<JSArray> simple_stack_trace = Handle<JSArray>::cast(property);
1346 Handle<FixedArray> elements(FixedArray::cast(simple_stack_trace->elements()));
1350 Handle<JSFunction> fun =
1351 handle(JSFunction::cast(elements->get(i + 1)), this);
1358 Handle<Script> casted_script(Script::cast(script));
1367 Handle<JSMessageObject> Isolate::CreateMessage(Handle<Object> exception,
1369 Handle<JSArray> stack_trace_object;
1377 GetDetailedStackTrace(Handle<JSObject>::cast(exception));
1482 Handle<JSMessageObject> message(JSMessageObject::cast(message_obj));
1483 Handle<JSValue> script_wrapper(JSValue::cast(message->script()));
1484 Handle<Script> script(Script::cast(script_wrapper->value()));
1498 Handle<JSMessageObject> message_obj(
1500 Handle<JSValue> script_wrapper(JSValue::cast(message_obj->script()));
1501 Handle<Script> script(Script::cast(script_wrapper->value()));
1554 void Isolate::PushPromise(Handle<JSObject> promise,
1555 Handle<JSFunction> function) {
1558 Handle<JSObject> global_promise =
1559 Handle<JSObject>::cast(global_handles()->Create(*promise));
1560 Handle<JSFunction> global_function =
1561 Handle<JSFunction>::cast(global_handles()->Create(*function));
1571 Handle<Object> global_function = tltop->promise_on_stack_->function();
1572 Handle<Object> global_promise = tltop->promise_on_stack_->promise();
1580 Handle<Object> Isolate::GetPromiseOnStackOnThrow() {
1581 Handle<Object> undefined = factory()->undefined_value();
1584 Handle<JSFunction> promise_function = tltop->promise_on_stack_->function();
1619 Handle<Context> Isolate::native_context() {
1620 return handle(context()->native_context());
1624 Handle<Context> Isolate::GetCallingNativeContext() {
1637 if (it.done()) return Handle<Context>::null();
1640 return Handle<Context>(context->native_context());
2103 // The initialization process does not handle memory exhaustion.
2487 void Isolate::UpdateArrayProtectorOnSetElement(Handle<JSObject> object) {
2499 handle(Smi::FromInt(kArrayProtectorInvalid), this));
2508 bool Isolate::IsAnyInitialArrayPrototype(Handle<JSArray> array) {
2557 Handle<JSObject> Isolate::SetUpSubregistry(Handle<JSObject> registry,
2558 Handle<Map> map, const char* cname) {
2559 Handle<String> name = factory()->InternalizeUtf8String(cname);
2560 Handle<JSObject> obj = factory()->NewJSObjectFromMap(map);
2568 Handle<JSObject> Isolate::GetSymbolRegistry() {
2570 Handle<Map> map = factory()->NewMap(JS_OBJECT_TYPE, JSObject::kHeaderSize);
2571 Handle<JSObject> registry = factory()->NewJSObjectFromMap(map);
2579 return Handle<JSObject>::cast(factory()->symbol_registry());
2621 void Isolate::ReportPromiseReject(Handle<JSObject> promise,
2622 Handle<Object> value,
2625 Handle<JSArray> stack_trace;
2627 stack_trace = GetDetailedStackTrace(Handle<JSObject>::cast(value));
2635 void Isolate::EnqueueMicrotask(Handle<Object> microtask) {
2637 Handle<FixedArray> queue(heap()->microtask_queue(), this);
2661 Handle<FixedArray> queue(heap()->microtask_queue(), this);
2668 Handle<Object> microtask(queue->get(i), this);
2670 Handle<JSFunction> microtask_function =
2671 Handle<JSFunction>::cast(microtask);
2679 Handle<Object> exception;
2687 Handle<CallHandlerInfo> callback_info =
2688 Handle<CallHandlerInfo>::cast(microtask);
2740 void Isolate::AddDetachedContext(Handle<Context> context) {
2742 Handle<WeakCell> cell = factory()->NewWeakCell(context);
2743 Handle<FixedArray> detached_contexts(heap()->detached_contexts());
2754 Handle<FixedArray> detached_contexts(heap()->detached_contexts());
2806 context_ = Handle<Context>(isolate->context());