From 5ba05470cb4c1faece2db12886b09148ef2456ee Mon Sep 17 00:00:00 2001 From: domenic Date: Mon, 30 Nov 2015 12:09:40 -0800 Subject: Implement author-constructible ReadableStream using V8 extras This implements the ReadableStream and CountQueuingStrategy classes from the Streams Standard using V8 extras. They are marked experimental. The implementation follows the spec and reference implementation very closely. The IDL implementation of ReadableStream is no longer exposed to the global scope; it was not usable in any way. But, to avoid any breakage in the interim, we introduce a non-experimental ReadableStreamTempStub.js V8 extra that replaces the IDL implementation with equivalent (non-)functionality. Further work will be necessary to integrate this implementation with Fetch, replacing Fetch's use of ReadableByteStream, before we can completely remove the existing implementation. The current implementation landscape is explained in the new README.md file in this directory. The tests are drawn from https://github.com/whatwg/streams/tree/master/reference-implementation/web-platform-tests. BUG=503491 R=yhirano@chromium.org,jochen@chromium.org Review URL: https://codereview.chromium.org/1404523005 Cr-Commit-Position: refs/heads/master@{#362201} --- build_overrides/v8.gni | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'build_overrides') diff --git a/build_overrides/v8.gni b/build_overrides/v8.gni index f1f27de..b4b933b 100644 --- a/build_overrides/v8.gni +++ b/build_overrides/v8.gni @@ -19,9 +19,13 @@ v8_use_external_startup_data = !(is_win || is_ios) # Adding V8 extras files requires API owners review # Be sure to synchronize with build/common.gypi -v8_extra_library_files = [] -v8_experimental_extra_library_files = - [ "../third_party/WebKit/Source/core/streams/ByteLengthQueuingStrategy.js" ] +v8_extra_library_files = + [ "../third_party/WebKit/Source/core/streams/ReadableStreamTempStub.js" ] +v8_experimental_extra_library_files = [ + "../third_party/WebKit/Source/core/streams/ByteLengthQueuingStrategy.js", + "../third_party/WebKit/Source/core/streams/CountQueuingStrategy.js", + "../third_party/WebKit/Source/core/streams/ReadableStream.js", +] if (is_android) { v8_external_startup_data_renaming_sources = [ -- cgit v1.1