From aba6a1dc871edbc6cbb286a350a4ba79ca645fb8 Mon Sep 17 00:00:00 2001 From: Ryan Dahl Date: Mon, 14 May 2018 02:50:55 -0400 Subject: readFileSync is working --- main.ts | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'main.ts') diff --git a/main.ts b/main.ts index 153414a19..3a6a043ab 100644 --- a/main.ts +++ b/main.ts @@ -1,10 +1,29 @@ //import * as ts from "typescript"; import { main as pb } from "./msg.pb" import "./util"; +import { TextDecoder } from "text-encoding"; +function readFileSync(filename: string): string { + const msg = pb.Msg.fromObject({ + kind: pb.Msg.MsgKind.READ_FILE_SYNC, + path: filename + }); + const ui8 = pb.Msg.encode(msg).finish(); + const ab = ui8.buffer.slice(ui8.byteOffset, ui8.byteOffset + ui8.byteLength); + const resBuf = V8Worker2.send(ab as ArrayBuffer); + const res = pb.Msg.decode(new Uint8Array(resBuf)); + if (res.error != null && res.error.length > 0) { + throw Error(res.error); + } + const decoder = new TextDecoder("utf8"); + return decoder.decode(res.data) +} function load(argv: string[]): void { console.log("Load argv", argv); + const inputFn = argv[1]; + const source = readFileSync(inputFn); + console.log("source", source) } V8Worker2.recv((ab: ArrayBuffer) => { -- cgit v1.2.3