Lines Matching defs:isolate

10 #include "src/execution/isolate-utils.h"
35 Handle<String> String::SlowFlatten(Isolate* isolate, Handle<ConsString> cons,
46 cons = handle(ConsString::cast(cons->second()), isolate);
48 return String::Flatten(isolate, handle(cons->second(), isolate),
62 isolate->factory()
70 isolate->factory()
78 cons->set_second(ReadOnlyRoots(isolate).empty_string());
83 Handle<String> String::SlowShare(Isolate* isolate, Handle<String> source) {
85 Handle<String> flat = Flatten(isolate, source, AllocationType::kSharedOld);
91 switch (isolate->factory()->ComputeSharingStrategyForString(flat, &new_map)) {
107 isolate->factory()->NewRawSharedOneByteString(length).ToHandleChecked();
113 isolate->factory()->NewRawSharedTwoByteString(length).ToHandleChecked();
122 void MigrateExternalStringResource(Isolate* isolate, ExternalString from,
128 to.SetResource(isolate, cast_from.resource());
131 isolate->heap()->UpdateExternalString(
133 cast_from.SetResource(isolate, nullptr);
136 isolate->heap()->FinalizeExternalString(from);
140 void MigrateExternalString(Isolate* isolate, String string,
143 MigrateExternalStringResource(isolate, ExternalString::cast(string),
146 MigrateExternalStringResource(isolate, ExternalString::cast(string),
152 isolate->heap()->FinalizeExternalString(string);
157 Map ComputeThinStringMap(IsolateT* isolate, StringShape from_string_shape,
159 ReadOnlyRoots roots(isolate);
216 // isolate, string, initial_map, target_map,
217 // [](Isolate* isolate, String string, StringShape initial_shape) {
225 IsolateT* isolate, String string, Map initial_map, Map target_map,
237 *isolate->factory()->GetStringMigrationSentinelMap(initial_type);
274 update_representation(isolate, string, initial_shape);
287 *isolate->factory()->GetStringMigrationSentinelMap(initial_type);
300 void String::MakeThin(IsolateT* isolate, String internalized) {
320 Map target_map = ComputeThinStringMap(isolate, initial_shape,
323 isolate, *this, initial_map, target_map,
324 [=](IsolateT* isolate, String string, StringShape initial_shape) {
328 MigrateExternalString(isolate->AsIsolate(), string, internalized);
350 isolate->heap()->CreateFillerObjectAt(
362 Isolate* isolate, String internalized);
364 LocalIsolate* isolate, String internalized);
390 Isolate* isolate = GetIsolateFromWritableObject(*this);
395 isolate->heap()->NotifyObjectLayoutChange(*this, no_gc,
400 isolate->internalized_string_access());
408 ReadOnlyRoots roots(isolate);
422 if (!isolate->heap()->IsLargeObject(*this)) {
423 isolate->heap()->CreateFillerObjectAt(
437 self.AllocateExternalPointerEntries(isolate);
438 self.SetResource(isolate, resource);
439 isolate->heap()->RegisterExternalString(*this);
474 Isolate* isolate = GetIsolateFromWritableObject(*this);
479 isolate->heap()->NotifyObjectLayoutChange(*this, no_gc,
484 isolate->internalized_string_access());
492 ReadOnlyRoots roots(isolate);
503 if (!isolate->heap()->IsLargeObject(*this)) {
507 isolate->heap()->CreateFillerObjectAt(
521 self.AllocateExternalPointerEntries(isolate);
522 self.SetResource(isolate, resource);
523 isolate->heap()->RegisterExternalString(*this);
555 Isolate* isolate = GetIsolateFromWritableObject(*this);
556 return !isolate->heap()->IsInGCPostProcessing();
690 Handle<Object> String::ToNumber(Isolate* isolate, Handle<String> subject) {
692 subject = String::Flatten(isolate, subject);
697 return isolate->factory()->NewNumberFromUint(index);
703 if (len == 0) return handle(Smi::zero(), isolate);
712 return isolate->factory()->nan_value();
719 return isolate->factory()->nan_value();
726 if (d == 0) return isolate->factory()->minus_zero_value();
739 return handle(Smi::FromInt(d), isolate);
745 return isolate->factory()->NewNumber(StringToDouble(isolate, subject, flags));
970 Handle<FixedArray> String::CalculateLineEnds(IsolateT* isolate,
973 src = Flatten(isolate, src);
994 isolate->factory()->NewFixedArray(line_count, AllocationType::kOld);
1001 template Handle<FixedArray> String::CalculateLineEnds(Isolate* isolate,
1004 template Handle<FixedArray> String::CalculateLineEnds(LocalIsolate* isolate,
1075 bool String::SlowEquals(Isolate* isolate, Handle<String> one,
1086 one = handle(ThinString::cast(*one).actual(), isolate);
1089 two = handle(ThinString::cast(*two).actual(), isolate);
1091 return String::Equals(isolate, one, two);
1118 one = String::Flatten(isolate, one);
1119 two = String::Flatten(isolate, two);
1142 ComparisonResult String::Compare(Isolate* isolate, Handle<String> x,
1162 x = String::Flatten(isolate, x);
1163 y = String::Flatten(isolate, y);
1215 Object String::IndexOf(Isolate* isolate, Handle<Object> receiver,
1217 if (receiver->IsNullOrUndefined(isolate)) {
1219 isolate, NewTypeError(MessageTemplate::kCalledOnNullOrUndefined,
1220 isolate->factory()->NewStringFromAsciiChecked(
1224 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, receiver_string,
1225 Object::ToString(isolate, receiver));
1228 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, search_string,
1229 Object::ToString(isolate, search));
1231 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, position,
1232 Object::ToInteger(isolate, position));
1236 String::IndexOf(isolate, receiver_string, search_string, index));
1242 int SearchString(Isolate* isolate, String::FlatContent receiver_content,
1245 return SearchString(isolate, receiver_content.ToOneByteVector(), pat_vector,
1248 return SearchString(isolate, receiver_content.ToUC16Vector(), pat_vector,
1254 int String::IndexOf(Isolate* isolate, Handle<String> receiver,
1265 receiver = String::Flatten(isolate, receiver);
1266 search = String::Flatten(isolate, search);
1276 return SearchString<const uint8_t>(isolate, receiver_content, pat_vector,
1280 return SearchString<const base::uc16>(isolate, receiver_content, pat_vector,
1284 MaybeHandle<String> String::GetSubstitution(Isolate* isolate, Match* match,
1289 Factory* factory = isolate->factory();
1294 replacement = String::Flatten(isolate, replacement);
1299 String::IndexOf(isolate, replacement, dollar_string, start_index);
1304 IncrementalStringBuilder builder(isolate);
1370 isolate, capture, match->GetCapture(scaled_index, &capture_exists),
1388 String::IndexOf(isolate, replacement, bracket_string, peek_ix + 1);
1402 isolate, capture,
1422 String::IndexOf(isolate, replacement, dollar_string, continue_from_ix);
1481 Object String::LastIndexOf(Isolate* isolate, Handle<Object> receiver,
1483 if (receiver->IsNullOrUndefined(isolate)) {
1485 isolate, NewTypeError(MessageTemplate::kCalledOnNullOrUndefined,
1486 isolate->factory()->NewStringFromAsciiChecked(
1490 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, receiver_string,
1491 Object::ToString(isolate, receiver));
1494 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, search_string,
1495 Object::ToString(isolate, search));
1497 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, position,
1498 Object::ToNumber(isolate, position));
1505 ASSIGN_RETURN_FAILURE_ON_EXCEPTION(isolate, position,
1506 Object::ToInteger(isolate, position));
1521 receiver_string = String::Flatten(isolate, receiver_string);
1522 search_string = String::Flatten(isolate, search_string);
1580 bool String::IsIdentifier(Isolate* isolate, Handle<String> str) {
1581 str = String::Flatten(isolate, str);
1814 FlatStringReader::FlatStringReader(Isolate* isolate, Handle<String> str)
1815 : Relocatable(isolate), str_(str), length_(str->length()) {
1818 DCHECK_EQ(ThreadId::Current(), isolate->thread_id());