mirror of
https://github.com/denoland/deno.git
synced 2024-11-26 16:09:27 -05:00
d68b44b6b2
Op dispatch is now dynamically dispatched, so slightly less efficient. The immeasurable perf hit is a reasonable trade for the API simplicity that is gained here. |
||
---|---|---|
.. | ||
examples | ||
libdeno | ||
BUILD.gn | ||
build.rs | ||
Cargo.toml | ||
core.d.ts | ||
flags.rs | ||
isolate.rs | ||
js_errors.rs | ||
lib.rs | ||
libdeno.rs | ||
modules.rs | ||
README.md | ||
shared_queue.js | ||
shared_queue.rs | ||
shared_queue_test.js |
Deno Core
This Rust crate contains the essential V8 bindings for Deno's command-line
interface (Deno CLI). The main abstraction here is the Isolate which proivdes a
way to execute JavaScript. The Isolate is modeled as a
Future<Item=(), Error=JSError>
which completes once all of its ops have
completed. The user must define what an Op is by implementing the Dispatch
trait, and by doing so define any "built-in" functionality that would be
provided by the VM. Ops are triggered by Deno.core.dispatch()
.
Documentation for this crate is thin at the moment. Please see http_bench.rs as a simple example of usage.
TypeScript support and a lot of other functionality is not available at this layer. See the cli for that.