diff options
author | Nayeem Rahman <nayeemrmn99@gmail.com> | 2020-05-09 13:34:47 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-09 08:34:47 -0400 |
commit | f184332c09c851faac50f598d29ebe4426e05464 (patch) | |
tree | 2659aba63702537fcde1bb64ddeafea1e5863f3e /std/io/iotest.ts | |
parent | 2b02535028f868ea8dfc471c4921a237747ccd4a (diff) |
BREAKING(std): reorganization (#5087)
* Prepend underscores to private modules
* Remove collectUint8Arrays() It would be a misuse of Deno.iter()'s result.
* Move std/_util/async.ts to std/async
* Move std/util/sha*.ts to std/hash
Diffstat (limited to 'std/io/iotest.ts')
-rw-r--r-- | std/io/iotest.ts | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/std/io/iotest.ts b/std/io/iotest.ts deleted file mode 100644 index a309fb5e1..000000000 --- a/std/io/iotest.ts +++ /dev/null @@ -1,53 +0,0 @@ -// Ported to Deno from -// Copyright 2009 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. -type Reader = Deno.Reader; - -/** OneByteReader returns a Reader that implements - * each non-empty Read by reading one byte from r. - */ -export class OneByteReader implements Reader { - constructor(readonly r: Reader) {} - - read(p: Uint8Array): Promise<number | null> { - if (p.byteLength === 0) { - return Promise.resolve(0); - } - if (!(p instanceof Uint8Array)) { - throw Error("expected Uint8Array"); - } - return Promise.resolve(this.r.read(p.subarray(0, 1))); - } -} - -/** HalfReader returns a Reader that implements Read - * by reading half as many requested bytes from r. - */ -export class HalfReader implements Reader { - constructor(readonly r: Reader) {} - - read(p: Uint8Array): Promise<number | null> { - if (!(p instanceof Uint8Array)) { - throw Error("expected Uint8Array"); - } - const half = Math.floor((p.byteLength + 1) / 2); - return Promise.resolve(this.r.read(p.subarray(0, half))); - } -} - -/** TimeoutReader returns `Deno.errors.TimedOut` on the second read - * with no data. Subsequent calls to read succeed. - */ -export class TimeoutReader implements Reader { - count = 0; - constructor(readonly r: Reader) {} - - read(p: Uint8Array): Promise<number | null> { - this.count++; - if (this.count === 2) { - throw new Deno.errors.TimedOut(); - } - return Promise.resolve(this.r.read(p)); - } -} |