summaryrefslogtreecommitdiff
path: root/core/snapshot_creator.rs
diff options
context:
space:
mode:
Diffstat (limited to 'core/snapshot_creator.rs')
-rw-r--r--core/snapshot_creator.rs44
1 files changed, 0 insertions, 44 deletions
diff --git a/core/snapshot_creator.rs b/core/snapshot_creator.rs
deleted file mode 100644
index 1d43b9174..000000000
--- a/core/snapshot_creator.rs
+++ /dev/null
@@ -1,44 +0,0 @@
-// Note: This is a nearly identical rewrite of core/libdeno/snapshot_creator.cc
-// but in Rust.
-//
-// This snapshot program is considered "basic" because the code being
-// snapshotted cannot call ops.
-
-extern crate deno;
-
-use deno::js_check;
-use deno::Isolate;
-use deno::StartupData;
-use std::env;
-use std::io::Write;
-
-fn main() {
- let args: Vec<String> = env::args().collect();
- // NOTE: `--help` arg will display V8 help and exit
- let args = deno::v8_set_flags(args);
-
- let (snapshot_out_bin, js_filename) = if args.len() == 3 {
- (args[1].clone(), args[2].clone())
- } else {
- eprintln!("Usage: snapshot_creator <out_filename> <js_filename>");
- std::process::exit(1);
- };
-
- let js_source =
- std::fs::read(&js_filename).expect("couldn't read js_filename");
- let js_source_str = std::str::from_utf8(&js_source).unwrap();
-
- let will_snapshot = true;
- let mut isolate = Isolate::new(StartupData::None, will_snapshot);
-
- js_check(isolate.execute(&js_filename, js_source_str));
-
- let snapshot = isolate.snapshot().expect("error snapshotting");
-
- let mut out_file = std::fs::File::create(snapshot_out_bin).unwrap();
- let snapshot_slice =
- unsafe { std::slice::from_raw_parts(snapshot.data_ptr, snapshot.data_len) };
- out_file
- .write_all(snapshot_slice)
- .expect("Failed to write snapshot file");
-}