Process source maps in Rust instead of JS (#1280)

- Improves speed and binary size significantly.
- Makes deno_last_exception() output a JSON structure.
- Isolate::execute and Isolate::event_loop now return
  structured, mapped JSError objects on errors.
- Removes libdeno functions:
  libdeno.setGlobalErrorHandler()
  libdeno.setPromiseRejectHandler()
  libdeno.setPromiseErrorExaminer()

In collaboration with Ryan Dahl.
This commit is contained in:
Ryan Dahl 2018-12-06 23:05:36 -05:00 committed by GitHub
parent 568ac0c902
commit c113df1bb8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
30 changed files with 854 additions and 807 deletions

View file

@ -1,5 +1,4 @@
// Copyright 2018 the Deno authors. All rights reserved. MIT license.
import { RawSourceMap } from "./types";
import { globalEval } from "./global_eval";
// The libdeno functions are moved so that users can't access them.
@ -39,9 +38,6 @@ interface Libdeno {
) => void;
setPromiseErrorExaminer: (handler: () => boolean) => void;
mainSource: string;
mainSourceMap: RawSourceMap;
}
const window = globalEval("this");