Implement WritableStreamNative

Add a C++ implementation of WritableStream. This is based on the
existing JavaScript implementation, and follows the standard text

See the design doc for background:

The new implementation is protected by a "StreamsNative" blink feature
flag. It does not interoperate with the old implementation: piping
doesn't work when the feature is enabled, and TransformStream uses the
wrong implementation of WritableStream.

A new virtual test suite covers the new code. There are currently many
failing expectations, mostly due to piping being disabled.


Change-Id: If90c3e93bc812211ea27b1487ed3955c63af54e8
Reviewed-by: Yutaka Hirano <>
Commit-Queue: Adam Rice <>
Cr-Commit-Position: refs/heads/master@{#630966}
69 files changed