Index: src/factory.cc |
diff --git a/src/factory.cc b/src/factory.cc |
index 9bcbf01c9e8c935d943f8791649c15f1c79f0af9..23ecafda59fcbe0e2efd3dca6ae05a7ece5beb06 100644 |
--- a/src/factory.cc |
+++ b/src/factory.cc |
@@ -1330,6 +1330,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()); |
@@ -2337,4 +2349,5 @@ Handle<Object> Factory::ToBoolean(bool value) { |
return value ? true_value() : false_value(); |
} |
+ |
} } // namespace v8::internal |