Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(176)

Side by Side Diff: src/runtime/runtime-i18n.cc

Issue 2741683004: [rename] Rename internal field to embedder field. (Closed)
Patch Set: [rename] Rename internal field to embedder field. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/profiler/heap-snapshot-generator.cc ('k') | src/runtime/runtime-typedarray.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 5
6 #ifdef V8_I18N_SUPPORT 6 #ifdef V8_I18N_SUPPORT
7 #include "src/runtime/runtime-utils.h" 7 #include "src/runtime/runtime-utils.h"
8 8
9 #include <memory> 9 #include <memory>
10 10
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after
315 CONVERT_ARG_HANDLE_CHECKED(JSObject, options, 1); 315 CONVERT_ARG_HANDLE_CHECKED(JSObject, options, 1);
316 CONVERT_ARG_HANDLE_CHECKED(JSObject, resolved, 2); 316 CONVERT_ARG_HANDLE_CHECKED(JSObject, resolved, 2);
317 317
318 Handle<JSFunction> constructor( 318 Handle<JSFunction> constructor(
319 isolate->native_context()->intl_date_time_format_function()); 319 isolate->native_context()->intl_date_time_format_function());
320 320
321 Handle<JSObject> local_object; 321 Handle<JSObject> local_object;
322 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, local_object, 322 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, local_object,
323 JSObject::New(constructor, constructor)); 323 JSObject::New(constructor, constructor));
324 324
325 // Set date time formatter as internal field of the resulting JS object. 325 // Set date time formatter as embedder field of the resulting JS object.
326 icu::SimpleDateFormat* date_format = 326 icu::SimpleDateFormat* date_format =
327 DateFormat::InitializeDateTimeFormat(isolate, locale, options, resolved); 327 DateFormat::InitializeDateTimeFormat(isolate, locale, options, resolved);
328 328
329 if (!date_format) return isolate->ThrowIllegalOperation(); 329 if (!date_format) return isolate->ThrowIllegalOperation();
330 330
331 local_object->SetInternalField(0, reinterpret_cast<Smi*>(date_format)); 331 local_object->SetEmbedderField(0, reinterpret_cast<Smi*>(date_format));
332 332
333 // Make object handle weak so we can delete the data format once GC kicks in. 333 // Make object handle weak so we can delete the data format once GC kicks in.
334 Handle<Object> wrapper = isolate->global_handles()->Create(*local_object); 334 Handle<Object> wrapper = isolate->global_handles()->Create(*local_object);
335 GlobalHandles::MakeWeak(wrapper.location(), wrapper.location(), 335 GlobalHandles::MakeWeak(wrapper.location(), wrapper.location(),
336 DateFormat::DeleteDateFormat, 336 DateFormat::DeleteDateFormat,
337 WeakCallbackType::kInternalFields); 337 WeakCallbackType::kInternalFields);
338 return *local_object; 338 return *local_object;
339 } 339 }
340 340
341 341
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
505 CONVERT_ARG_HANDLE_CHECKED(JSObject, options, 1); 505 CONVERT_ARG_HANDLE_CHECKED(JSObject, options, 1);
506 CONVERT_ARG_HANDLE_CHECKED(JSObject, resolved, 2); 506 CONVERT_ARG_HANDLE_CHECKED(JSObject, resolved, 2);
507 507
508 Handle<JSFunction> constructor( 508 Handle<JSFunction> constructor(
509 isolate->native_context()->intl_number_format_function()); 509 isolate->native_context()->intl_number_format_function());
510 510
511 Handle<JSObject> local_object; 511 Handle<JSObject> local_object;
512 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, local_object, 512 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, local_object,
513 JSObject::New(constructor, constructor)); 513 JSObject::New(constructor, constructor));
514 514
515 // Set number formatter as internal field of the resulting JS object. 515 // Set number formatter as embedder field of the resulting JS object.
516 icu::DecimalFormat* number_format = 516 icu::DecimalFormat* number_format =
517 NumberFormat::InitializeNumberFormat(isolate, locale, options, resolved); 517 NumberFormat::InitializeNumberFormat(isolate, locale, options, resolved);
518 518
519 if (!number_format) return isolate->ThrowIllegalOperation(); 519 if (!number_format) return isolate->ThrowIllegalOperation();
520 520
521 local_object->SetInternalField(0, reinterpret_cast<Smi*>(number_format)); 521 local_object->SetEmbedderField(0, reinterpret_cast<Smi*>(number_format));
522 522
523 Handle<Object> wrapper = isolate->global_handles()->Create(*local_object); 523 Handle<Object> wrapper = isolate->global_handles()->Create(*local_object);
524 GlobalHandles::MakeWeak(wrapper.location(), wrapper.location(), 524 GlobalHandles::MakeWeak(wrapper.location(), wrapper.location(),
525 NumberFormat::DeleteNumberFormat, 525 NumberFormat::DeleteNumberFormat,
526 WeakCallbackType::kInternalFields); 526 WeakCallbackType::kInternalFields);
527 return *local_object; 527 return *local_object;
528 } 528 }
529 529
530 530
531 RUNTIME_FUNCTION(Runtime_InternalNumberFormat) { 531 RUNTIME_FUNCTION(Runtime_InternalNumberFormat) {
(...skipping 30 matching lines...) Expand all
562 CONVERT_ARG_HANDLE_CHECKED(JSObject, options, 1); 562 CONVERT_ARG_HANDLE_CHECKED(JSObject, options, 1);
563 CONVERT_ARG_HANDLE_CHECKED(JSObject, resolved, 2); 563 CONVERT_ARG_HANDLE_CHECKED(JSObject, resolved, 2);
564 564
565 Handle<JSFunction> constructor( 565 Handle<JSFunction> constructor(
566 isolate->native_context()->intl_collator_function()); 566 isolate->native_context()->intl_collator_function());
567 567
568 Handle<JSObject> local_object; 568 Handle<JSObject> local_object;
569 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, local_object, 569 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, local_object,
570 JSObject::New(constructor, constructor)); 570 JSObject::New(constructor, constructor));
571 571
572 // Set collator as internal field of the resulting JS object. 572 // Set collator as embedder field of the resulting JS object.
573 icu::Collator* collator = 573 icu::Collator* collator =
574 Collator::InitializeCollator(isolate, locale, options, resolved); 574 Collator::InitializeCollator(isolate, locale, options, resolved);
575 575
576 if (!collator) return isolate->ThrowIllegalOperation(); 576 if (!collator) return isolate->ThrowIllegalOperation();
577 577
578 local_object->SetInternalField(0, reinterpret_cast<Smi*>(collator)); 578 local_object->SetEmbedderField(0, reinterpret_cast<Smi*>(collator));
579 579
580 Handle<Object> wrapper = isolate->global_handles()->Create(*local_object); 580 Handle<Object> wrapper = isolate->global_handles()->Create(*local_object);
581 GlobalHandles::MakeWeak(wrapper.location(), wrapper.location(), 581 GlobalHandles::MakeWeak(wrapper.location(), wrapper.location(),
582 Collator::DeleteCollator, 582 Collator::DeleteCollator,
583 WeakCallbackType::kInternalFields); 583 WeakCallbackType::kInternalFields);
584 return *local_object; 584 return *local_object;
585 } 585 }
586 586
587 587
588 RUNTIME_FUNCTION(Runtime_InternalCompare) { 588 RUNTIME_FUNCTION(Runtime_InternalCompare) {
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
689 CONVERT_ARG_HANDLE_CHECKED(JSObject, options, 1); 689 CONVERT_ARG_HANDLE_CHECKED(JSObject, options, 1);
690 CONVERT_ARG_HANDLE_CHECKED(JSObject, resolved, 2); 690 CONVERT_ARG_HANDLE_CHECKED(JSObject, resolved, 2);
691 691
692 Handle<JSFunction> constructor( 692 Handle<JSFunction> constructor(
693 isolate->native_context()->intl_v8_break_iterator_function()); 693 isolate->native_context()->intl_v8_break_iterator_function());
694 694
695 Handle<JSObject> local_object; 695 Handle<JSObject> local_object;
696 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, local_object, 696 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, local_object,
697 JSObject::New(constructor, constructor)); 697 JSObject::New(constructor, constructor));
698 698
699 // Set break iterator as internal field of the resulting JS object. 699 // Set break iterator as embedder field of the resulting JS object.
700 icu::BreakIterator* break_iterator = V8BreakIterator::InitializeBreakIterator( 700 icu::BreakIterator* break_iterator = V8BreakIterator::InitializeBreakIterator(
701 isolate, locale, options, resolved); 701 isolate, locale, options, resolved);
702 702
703 if (!break_iterator) return isolate->ThrowIllegalOperation(); 703 if (!break_iterator) return isolate->ThrowIllegalOperation();
704 704
705 local_object->SetInternalField(0, reinterpret_cast<Smi*>(break_iterator)); 705 local_object->SetEmbedderField(0, reinterpret_cast<Smi*>(break_iterator));
706 // Make sure that the pointer to adopted text is NULL. 706 // Make sure that the pointer to adopted text is NULL.
707 local_object->SetInternalField(1, static_cast<Smi*>(nullptr)); 707 local_object->SetEmbedderField(1, static_cast<Smi*>(nullptr));
708 708
709 // Make object handle weak so we can delete the break iterator once GC kicks 709 // Make object handle weak so we can delete the break iterator once GC kicks
710 // in. 710 // in.
711 Handle<Object> wrapper = isolate->global_handles()->Create(*local_object); 711 Handle<Object> wrapper = isolate->global_handles()->Create(*local_object);
712 GlobalHandles::MakeWeak(wrapper.location(), wrapper.location(), 712 GlobalHandles::MakeWeak(wrapper.location(), wrapper.location(),
713 V8BreakIterator::DeleteBreakIterator, 713 V8BreakIterator::DeleteBreakIterator,
714 WeakCallbackType::kInternalFields); 714 WeakCallbackType::kInternalFields);
715 return *local_object; 715 return *local_object;
716 } 716 }
717 717
718 718
719 RUNTIME_FUNCTION(Runtime_BreakIteratorAdoptText) { 719 RUNTIME_FUNCTION(Runtime_BreakIteratorAdoptText) {
720 HandleScope scope(isolate); 720 HandleScope scope(isolate);
721 721
722 DCHECK_EQ(2, args.length()); 722 DCHECK_EQ(2, args.length());
723 723
724 CONVERT_ARG_HANDLE_CHECKED(JSObject, break_iterator_holder, 0); 724 CONVERT_ARG_HANDLE_CHECKED(JSObject, break_iterator_holder, 0);
725 CONVERT_ARG_HANDLE_CHECKED(String, text, 1); 725 CONVERT_ARG_HANDLE_CHECKED(String, text, 1);
726 726
727 icu::BreakIterator* break_iterator = 727 icu::BreakIterator* break_iterator =
728 V8BreakIterator::UnpackBreakIterator(isolate, break_iterator_holder); 728 V8BreakIterator::UnpackBreakIterator(isolate, break_iterator_holder);
729 CHECK_NOT_NULL(break_iterator); 729 CHECK_NOT_NULL(break_iterator);
730 730
731 icu::UnicodeString* u_text = reinterpret_cast<icu::UnicodeString*>( 731 icu::UnicodeString* u_text = reinterpret_cast<icu::UnicodeString*>(
732 break_iterator_holder->GetInternalField(1)); 732 break_iterator_holder->GetEmbedderField(1));
733 delete u_text; 733 delete u_text;
734 734
735 int length = text->length(); 735 int length = text->length();
736 text = String::Flatten(text); 736 text = String::Flatten(text);
737 DisallowHeapAllocation no_gc; 737 DisallowHeapAllocation no_gc;
738 String::FlatContent flat = text->GetFlatContent(); 738 String::FlatContent flat = text->GetFlatContent();
739 std::unique_ptr<uc16[]> sap; 739 std::unique_ptr<uc16[]> sap;
740 const UChar* text_value = GetUCharBufferFromFlat(flat, &sap, length); 740 const UChar* text_value = GetUCharBufferFromFlat(flat, &sap, length);
741 u_text = new icu::UnicodeString(text_value, length); 741 u_text = new icu::UnicodeString(text_value, length);
742 break_iterator_holder->SetInternalField(1, reinterpret_cast<Smi*>(u_text)); 742 break_iterator_holder->SetEmbedderField(1, reinterpret_cast<Smi*>(u_text));
743 743
744 break_iterator->setText(*u_text); 744 break_iterator->setText(*u_text);
745 745
746 return isolate->heap()->undefined_value(); 746 return isolate->heap()->undefined_value();
747 } 747 }
748 748
749 749
750 RUNTIME_FUNCTION(Runtime_BreakIteratorFirst) { 750 RUNTIME_FUNCTION(Runtime_BreakIteratorFirst) {
751 HandleScope scope(isolate); 751 HandleScope scope(isolate);
752 752
(...skipping 429 matching lines...) Expand 10 before | Expand all | Expand 10 after
1182 Handle<FixedArray> date_cache_version = 1182 Handle<FixedArray> date_cache_version =
1183 Handle<FixedArray>::cast(isolate->eternal_handles()->GetSingleton( 1183 Handle<FixedArray>::cast(isolate->eternal_handles()->GetSingleton(
1184 EternalHandles::DATE_CACHE_VERSION)); 1184 EternalHandles::DATE_CACHE_VERSION));
1185 return date_cache_version->get(0); 1185 return date_cache_version->get(0);
1186 } 1186 }
1187 1187
1188 } // namespace internal 1188 } // namespace internal
1189 } // namespace v8 1189 } // namespace v8
1190 1190
1191 #endif // V8_I18N_SUPPORT 1191 #endif // V8_I18N_SUPPORT
OLDNEW
« no previous file with comments | « src/profiler/heap-snapshot-generator.cc ('k') | src/runtime/runtime-typedarray.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698