tree: 49b44fe91f4795683cb9d229da07aca10889c2e4 [path history] [tgz]
  1. ByteLengthQueuingStrategy.js
  2. CountQueuingStrategy.js
  3. OWNERS
  4. ReadableByteStream.cpp
  5. ReadableByteStream.h
  6. ReadableByteStream.idl
  7. ReadableByteStreamReader.h
  8. ReadableByteStreamReader.idl
  9. ReadableStream.cpp
  10. ReadableStream.h
  11. ReadableStream.js
  12. ReadableStreamController.h
  13. ReadableStreamImpl.h
  14. ReadableStreamOperations.cpp
  15. ReadableStreamOperations.h
  16. ReadableStreamOperationsTest.cpp
  17. ReadableStreamReader.cpp
  18. ReadableStreamReader.h
  19. ReadableStreamReader.idl
  20. ReadableStreamReaderTest.cpp
  21. ReadableStreamTest.cpp
  22. README.md
  23. Stream.cpp
  24. Stream.h
  25. Stream.idl
  26. UnderlyingSource.h
  27. UnderlyingSourceBase.cpp
  28. UnderlyingSourceBase.h
  29. UnderlyingSourceBase.idl
third_party/WebKit/Source/core/streams/README.md

This directory contains files from several different implementations and implementation strategies:

Traditional ReadableStream Implementation

  • ReadableByteStream.{cpp,h,idl}
  • ReadableByteStreamReader.{h,idl}
  • ReadableStream.{cpp,h,idl}
  • ReadableStreamImpl.h
  • ReadableStreamReader.{cpp,h,idl}
  • ReadableStreamReaderTest.cpp
  • ReadableStreamTest.cpp
  • UnderlyingSource.h

These files implement the current streams spec, plus the more speculative ReadableByteStream, to the extent necessary to support Fetch response bodies. They do not support author-constructed readable streams. They use the normal approach for implementing web-exposed classes, i.e. IDL bindings with C++ implementation. They are now deprecated and will be removed shortly. See https://crbug.com/613435.

V8 Extras ReadableStream Implementation

  • ByteLengthQueuingStrategy.js
  • CountQueuingStrategy.js
  • ReadableStream.js
  • ReadableStreamController.h
  • UnderlyingSourceBase.{cpp,h,idl}
  • bindings/core/v8/ReadableStreamOperations.{cpp,h}

These files implement V8 extras based ReadableStream which is currently used.

Old streams

  • Stream.{cpp,h,idl}

These files support an old streams spec. They should eventually be removed, but right now XMLHttpRequest and Media Streams Extension code in Blink still depends on them.