diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2018-12-04 15:06:20 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-04 15:06:20 -0800 |
commit | d70b04c6d7f5fec2d3cd9584362a9675a5196531 (patch) | |
tree | 1820dd24196bbe0e82c9d5b4d8f8e55feeebcb37 /libdeno/api.cc | |
parent | 30420ad3174e232b74146ad09af448407f252685 (diff) |
Add deno_config struct for isolate creation. (#1277)
In preperation for adding other callbacks to libdeno.
Diffstat (limited to 'libdeno/api.cc')
-rw-r--r-- | libdeno/api.cc | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/libdeno/api.cc b/libdeno/api.cc index eac6bdb61..6f4ac826f 100644 --- a/libdeno/api.cc +++ b/libdeno/api.cc @@ -13,8 +13,8 @@ extern "C" { -Deno* deno_new(deno_buf snapshot, deno_buf shared, deno_recv_cb cb) { - deno::DenoIsolate* d = new deno::DenoIsolate(snapshot, cb, shared); +Deno* deno_new(deno_buf snapshot, deno_config config) { + deno::DenoIsolate* d = new deno::DenoIsolate(snapshot, config); v8::Isolate::CreateParams params; params.array_buffer_allocator = d->array_buffer_allocator_; params.external_references = deno::external_references; @@ -46,12 +46,11 @@ Deno* deno_new(deno_buf snapshot, deno_buf shared, deno_recv_cb cb) { return reinterpret_cast<Deno*>(d); } -Deno* deno_new_snapshotter(deno_buf shared, deno_recv_cb cb, - const char* js_filename, const char* js_source, - const char* source_map) { +Deno* deno_new_snapshotter(deno_config config, const char* js_filename, + const char* js_source, const char* source_map) { auto* creator = new v8::SnapshotCreator(deno::external_references); auto* isolate = creator->GetIsolate(); - auto* d = new deno::DenoIsolate(deno::empty_buf, cb, shared); + auto* d = new deno::DenoIsolate(deno::empty_buf, config); d->snapshot_creator_ = creator; d->AddIsolate(isolate); { @@ -100,10 +99,10 @@ const char* deno_last_exception(Deno* d_) { return d->last_exception_.c_str(); } -int deno_execute(Deno* d_, void* user_data_, const char* js_filename, +int deno_execute(Deno* d_, void* user_data, const char* js_filename, const char* js_source) { auto* d = unwrap(d_); - deno::UserDataScope user_data_scope(d, user_data_); + deno::UserDataScope user_data_scope(d, user_data); auto* isolate = d->isolate_; v8::Locker locker(isolate); v8::Isolate::Scope isolate_scope(isolate); @@ -112,7 +111,7 @@ int deno_execute(Deno* d_, void* user_data_, const char* js_filename, return deno::Execute(context, js_filename, js_source) ? 1 : 0; } -int deno_respond(Deno* d_, void* user_data_, int32_t req_id, deno_buf buf) { +int deno_respond(Deno* d_, void* user_data, int32_t req_id, deno_buf buf) { auto* d = unwrap(d_); if (d->current_args_ != nullptr) { // Synchronous response. @@ -123,7 +122,7 @@ int deno_respond(Deno* d_, void* user_data_, int32_t req_id, deno_buf buf) { } // Asynchronous response. - deno::UserDataScope user_data_scope(d, user_data_); + deno::UserDataScope user_data_scope(d, user_data); v8::Locker locker(d->isolate_); v8::Isolate::Scope isolate_scope(d->isolate_); v8::HandleScope handle_scope(d->isolate_); |