summaryrefslogtreecommitdiff
path: root/cli/js.rs
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2020-09-11 15:18:49 +0200
committerGitHub <noreply@github.com>2020-09-11 15:18:49 +0200
commit0d1f626edd7c574ff0e70438cdb678dcb5c91170 (patch)
tree8d80e4f32ba9535da4c387234b795385ee2f6492 /cli/js.rs
parent7c2e7c660804afca823d60e6496aa853f75db16c (diff)
refactor(core): JsRuntime initialization (#7415)
Removes: - "deno_core::StartupData" - "deno_core::Script" - "deno_core::OwnedScript" Changes to "JsRuntime": - remove "new_with_loader()" - remove "with_heap_limits()" - rename "IsolateOptions" to "RuntimeOptions" and make public - "JsRuntime::new()" takes "RuntimeOptions" as a single param
Diffstat (limited to 'cli/js.rs')
-rw-r--r--cli/js.rs34
1 files changed, 24 insertions, 10 deletions
diff --git a/cli/js.rs b/cli/js.rs
index 2dc56710d..1c738af76 100644
--- a/cli/js.rs
+++ b/cli/js.rs
@@ -1,3 +1,7 @@
+// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
+
+use deno_core::Snapshot;
+
pub const TS_VERSION: &str = env!("TS_VERSION");
pub static CLI_SNAPSHOT: &[u8] =
@@ -11,12 +15,24 @@ pub static SHARED_GLOBALS_LIB: &str =
pub static WINDOW_LIB: &str = include_str!("dts/lib.deno.window.d.ts");
pub static UNSTABLE_NS_LIB: &str = include_str!("dts/lib.deno.unstable.d.ts");
+pub fn deno_isolate_init() -> Snapshot {
+ debug!("Deno isolate init with snapshots.");
+ let data = CLI_SNAPSHOT;
+ Snapshot::Static(data)
+}
+
+pub fn compiler_isolate_init() -> Snapshot {
+ debug!("Deno compiler isolate init with snapshots.");
+ let data = COMPILER_SNAPSHOT;
+ Snapshot::Static(data)
+}
+
#[test]
fn cli_snapshot() {
- let mut isolate = deno_core::JsRuntime::new(
- deno_core::StartupData::Snapshot(deno_core::Snapshot::Static(CLI_SNAPSHOT)),
- false,
- );
+ let mut isolate = deno_core::JsRuntime::new(deno_core::RuntimeOptions {
+ startup_snapshot: Some(deno_isolate_init()),
+ ..Default::default()
+ });
deno_core::js_check(isolate.execute(
"<anon>",
r#"
@@ -30,12 +46,10 @@ fn cli_snapshot() {
#[test]
fn compiler_snapshot() {
- let mut isolate = deno_core::JsRuntime::new(
- deno_core::StartupData::Snapshot(deno_core::Snapshot::Static(
- COMPILER_SNAPSHOT,
- )),
- false,
- );
+ let mut isolate = deno_core::JsRuntime::new(deno_core::RuntimeOptions {
+ startup_snapshot: Some(compiler_isolate_init()),
+ ..Default::default()
+ });
deno_core::js_check(isolate.execute(
"<anon>",
r#"