summaryrefslogtreecommitdiff
path: root/net/util.ts
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2018-12-18 18:25:49 -0500
committerRyan Dahl <ry@tinyclouds.org>2018-12-18 18:27:05 -0500
commit968d50842512a007dc9c2e4ae31b1970fdc6e6a2 (patch)
tree240d8b019a6694b6722ea4cfc3576e3f5b1b4bd0 /net/util.ts
parent6e077e71fa27dbb993a49cda211c5385a76ca6aa (diff)
Rename project to deno_std
Move typescript files to net/ Original: https://github.com/denoland/deno_std/commit/99e276eb89fbe0003bfa8d9e7b907ff3ef19ee47
Diffstat (limited to 'net/util.ts')
-rw-r--r--net/util.ts29
1 files changed, 29 insertions, 0 deletions
diff --git a/net/util.ts b/net/util.ts
new file mode 100644
index 000000000..811940b4d
--- /dev/null
+++ b/net/util.ts
@@ -0,0 +1,29 @@
+import { Buffer, Reader } from "deno";
+
+export function assert(cond: boolean, msg = "assert") {
+ if (!cond) {
+ throw Error(msg);
+ }
+}
+
+// `off` is the offset into `dst` where it will at which to begin writing values
+// from `src`.
+// Returns the number of bytes copied.
+export function copyBytes(dst: Uint8Array, src: Uint8Array, off = 0): number {
+ const r = dst.byteLength - off;
+ if (src.byteLength > r) {
+ src = src.subarray(0, r);
+ }
+ dst.set(src, off);
+ return src.byteLength;
+}
+
+export function charCode(s: string): number {
+ return s.charCodeAt(0);
+}
+
+const encoder = new TextEncoder();
+export function stringsReader(s: string): Reader {
+ const ui8 = encoder.encode(s);
+ return new Buffer(ui8.buffer as ArrayBuffer);
+}