1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-22 15:24:46 -05:00
denoland-deno/core
Ryan Dahl d2579f4564
core: Rename Behavior to Dispatch (#2082)
And rename IsolateState to ThreadSafeState.

Also make ThreadSafeState directly implement Dispatch. This is simpler.
2019-04-09 13:11:25 -04:00
..
libdeno core: snapshot improvements (#2052) 2019-04-08 10:12:43 -04:00
BUILD.gn Rename crate deno_core to deno (#2022) 2019-03-30 19:30:40 -04:00
build.rs Publish rust crate on crates.io (#2024) 2019-03-31 17:22:02 -04:00
Cargo.toml v0.3.6 2019-04-04 09:59:41 -04:00
core.d.ts namespace reorg: libdeno and DenoCore to Deno.core (#1998) 2019-03-26 08:22:07 -04:00
flags.rs core: Abstract out Behavior from Isolate (#1904) 2019-03-11 17:57:36 -04:00
http_bench.js namespace reorg: libdeno and DenoCore to Deno.core (#1998) 2019-03-26 08:22:07 -04:00
http_bench.rs core: Rename Behavior to Dispatch (#2082) 2019-04-09 13:11:25 -04:00
isolate.rs core: Rename Behavior to Dispatch (#2082) 2019-04-09 13:11:25 -04:00
js_errors.rs Non-fatal compile_sync failures (#2039) 2019-04-04 05:33:32 -04:00
lib.rs Add deno_core::RecursiveLoad for async module loading (#2034) 2019-04-02 20:10:08 +02:00
libdeno.rs core: snapshot improvements (#2052) 2019-04-08 10:12:43 -04:00
modules.rs core: Rename Behavior to Dispatch (#2082) 2019-04-09 13:11:25 -04:00
README.md core: Rename Behavior to Dispatch (#2082) 2019-04-09 13:11:25 -04:00
shared_queue.js namespace reorg: libdeno and DenoCore to Deno.core (#1998) 2019-03-26 08:22:07 -04:00
shared_queue.rs Clippy fixes 2019-04-02 18:04:25 +02:00
shared_queue_test.js namespace reorg: libdeno and DenoCore to Deno.core (#1998) 2019-03-26 08:22:07 -04:00

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.