diff options
author | Exidex <16986685+Exidex@users.noreply.github.com> | 2023-05-31 22:26:24 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-31 14:26:24 -0600 |
commit | f3193e0e1c12ea139f00d6b19d152b95f37b73c3 (patch) | |
tree | e53d0a2bad466194a319d414c2f44caafcb538d6 /runtime/examples/hello_runtime.rs | |
parent | b1e28b0708b378fa6cbe3a0ec95bb94b33775355 (diff) |
feat(runtime): Add example for extension with ops (#19204)
Spend quite some time trying to get this working. With proper example
would have been a lot faster. So this is pr with the example. I also
rearranged examples a little bit to allow for addition of more examples
Diffstat (limited to 'runtime/examples/hello_runtime.rs')
-rw-r--r-- | runtime/examples/hello_runtime.rs | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/runtime/examples/hello_runtime.rs b/runtime/examples/hello_runtime.rs deleted file mode 100644 index d4e39dd2d..000000000 --- a/runtime/examples/hello_runtime.rs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. - -use deno_core::error::AnyError; -use deno_core::FsModuleLoader; -use deno_core::ModuleSpecifier; -use deno_runtime::permissions::PermissionsContainer; -use deno_runtime::worker::MainWorker; -use deno_runtime::worker::WorkerOptions; -use std::path::Path; -use std::rc::Rc; - -deno_core::extension!( - hello_runtime, - esm_entry_point = "ext:hello_runtime/hello_runtime_bootstrap.js", - esm = ["hello_runtime_bootstrap.js"] -); - -#[tokio::main] -async fn main() -> Result<(), AnyError> { - let js_path = - Path::new(env!("CARGO_MANIFEST_DIR")).join("examples/hello_runtime.js"); - let main_module = ModuleSpecifier::from_file_path(js_path).unwrap(); - let mut worker = MainWorker::bootstrap_from_options( - main_module.clone(), - PermissionsContainer::allow_all(), - WorkerOptions { - module_loader: Rc::new(FsModuleLoader), - extensions: vec![hello_runtime::init_ops_and_esm()], - ..Default::default() - }, - ); - worker.execute_main_module(&main_module).await?; - worker.run_event_loop(false).await?; - Ok(()) -} |