diff options
author | Bartek Iwańczuk <biwanczuk@gmail.com> | 2020-03-05 13:05:41 +0100 |
---|---|---|
committer | Bartek Iwańczuk <biwanczuk@gmail.com> | 2020-03-05 18:48:55 +0100 |
commit | 2e590072148c85bbc479ab49aa9556b0a2cfaff2 (patch) | |
tree | 89747e7b6762158e35f9120ca0ef0fa14991ae34 /cli/js/streams/readable-stream-byob-reader.ts | |
parent | 9b59ed7c7907c5f365e72b5c5a74114eb8ff1488 (diff) |
move Web APIs to cli/js/web/
Diffstat (limited to 'cli/js/streams/readable-stream-byob-reader.ts')
-rw-r--r-- | cli/js/streams/readable-stream-byob-reader.ts | 93 |
1 files changed, 0 insertions, 93 deletions
diff --git a/cli/js/streams/readable-stream-byob-reader.ts b/cli/js/streams/readable-stream-byob-reader.ts deleted file mode 100644 index 0f9bfb037..000000000 --- a/cli/js/streams/readable-stream-byob-reader.ts +++ /dev/null @@ -1,93 +0,0 @@ -// Forked from https://github.com/stardazed/sd-streams/tree/8928cf04b035fd02fb1340b7eb541c76be37e546 -// Copyright (c) 2018-Present by Arthur Langereis - @zenmumbler MIT - -/** - * streams/readable-stream-byob-reader - ReadableStreamBYOBReader class implementation - * Part of Stardazed - * (c) 2018-Present by Arthur Langereis - @zenmumbler - * https://github.com/stardazed/sd-streams - */ - -import * as rs from "./readable-internals.ts"; -import * as shared from "./shared-internals.ts"; - -export class SDReadableStreamBYOBReader - implements rs.SDReadableStreamBYOBReader { - [rs.closedPromise_]: shared.ControlledPromise<void>; - [rs.ownerReadableStream_]: rs.SDReadableStream<ArrayBufferView> | undefined; - [rs.readIntoRequests_]: Array< - rs.ReadRequest<IteratorResult<ArrayBufferView>> - >; - - constructor(stream: rs.SDReadableStream<ArrayBufferView>) { - if (!rs.isReadableStream(stream)) { - throw new TypeError(); - } - if ( - !rs.isReadableByteStreamController(stream[rs.readableStreamController_]) - ) { - throw new TypeError(); - } - if (rs.isReadableStreamLocked(stream)) { - throw new TypeError("The stream is locked."); - } - rs.readableStreamReaderGenericInitialize(this, stream); - this[rs.readIntoRequests_] = []; - } - - get closed(): Promise<void> { - if (!rs.isReadableStreamBYOBReader(this)) { - return Promise.reject(new TypeError()); - } - return this[rs.closedPromise_].promise; - } - - cancel(reason: shared.ErrorResult): Promise<void> { - if (!rs.isReadableStreamBYOBReader(this)) { - return Promise.reject(new TypeError()); - } - const stream = this[rs.ownerReadableStream_]; - if (stream === undefined) { - return Promise.reject( - new TypeError("Reader is not associated with a stream") - ); - } - return rs.readableStreamCancel(stream, reason); - } - - read(view: ArrayBufferView): Promise<IteratorResult<ArrayBufferView>> { - if (!rs.isReadableStreamBYOBReader(this)) { - return Promise.reject(new TypeError()); - } - if (this[rs.ownerReadableStream_] === undefined) { - return Promise.reject( - new TypeError("Reader is not associated with a stream") - ); - } - if (!ArrayBuffer.isView(view)) { - return Promise.reject( - new TypeError("view argument must be a valid ArrayBufferView") - ); - } - // If ! IsDetachedBuffer(view.[[ViewedArrayBuffer]]) is true, return a promise rejected with a TypeError exception. - if (view.byteLength === 0) { - return Promise.reject( - new TypeError("supplied buffer view must be > 0 bytes") - ); - } - return rs.readableStreamBYOBReaderRead(this, view, true); - } - - releaseLock(): void { - if (!rs.isReadableStreamBYOBReader(this)) { - throw new TypeError(); - } - if (this[rs.ownerReadableStream_] === undefined) { - throw new TypeError("Reader is not associated with a stream"); - } - if (this[rs.readIntoRequests_].length > 0) { - throw new TypeError(); - } - rs.readableStreamReaderGenericRelease(this); - } -} |