Index: src/factory.cc |
diff --git a/src/factory.cc b/src/factory.cc |
index fc49e32537ebec9a4799012bc10b4b7ccbeffc72..c1029283f829cf1e7b306288033779b6e43f2502 100644 |
--- a/src/factory.cc |
+++ b/src/factory.cc |
@@ -1241,6 +1241,18 @@ Handle<JSFunction> Factory::NewFunctionWithoutPrototype(Handle<String> name, |
} |
+Handle<JSObject> Factory::NewIteratorResultObject(Handle<Object> value, |
+ bool done) { |
+ Handle<Map> map(isolate()->native_context()->iterator_result_map()); |
+ Handle<JSObject> result = NewJSObjectFromMap(map, NOT_TENURED, false); |
+ result->InObjectPropertyAtPut( |
+ JSGeneratorObject::kResultValuePropertyIndex, *value); |
+ result->InObjectPropertyAtPut( |
+ JSGeneratorObject::kResultDonePropertyIndex, *ToBoolean(done)); |
+ return result; |
+} |
+ |
+ |
Handle<ScopeInfo> Factory::NewScopeInfo(int length) { |
Handle<FixedArray> array = NewFixedArray(length, TENURED); |
array->set_map_no_write_barrier(*scope_info_map()); |
@@ -1996,4 +2008,5 @@ Handle<Object> Factory::ToBoolean(bool value) { |
return value ? true_value() : false_value(); |
} |
+ |
} } // namespace v8::internal |