diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2018-06-10 14:18:15 +0200 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2018-06-10 14:18:15 +0200 |
commit | 9296b21b87eec3f01bee465fcb2b64c4ea14514b (patch) | |
tree | 9ad1d353de6ffce438fd631b60204b0fc5563a71 /deno2/deno_internal.h | |
parent | a6880dad6534ee9e1637c5098698cf32a4f1527e (diff) |
Use C linkage in deno.h
Diffstat (limited to 'deno2/deno_internal.h')
-rw-r--r-- | deno2/deno_internal.h | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/deno2/deno_internal.h b/deno2/deno_internal.h index 35a20bdc0..92f891af3 100644 --- a/deno2/deno_internal.h +++ b/deno2/deno_internal.h @@ -7,18 +7,7 @@ #include "include/deno.h" #include "v8/include/v8.h" -namespace deno { - -void Print(const v8::FunctionCallbackInfo<v8::Value>& args); -void Recv(const v8::FunctionCallbackInfo<v8::Value>& args); -void Send(const v8::FunctionCallbackInfo<v8::Value>& args); -static intptr_t external_references[] = {reinterpret_cast<intptr_t>(Print), - reinterpret_cast<intptr_t>(Recv), - reinterpret_cast<intptr_t>(Send), 0}; - -v8::StartupData make_snapshot(v8::StartupData* prev_natives_blob, - v8::StartupData* prev_snapshot_blob, - const char* js_filename, const char* js_source); +extern "C" { // deno_s = Wrapped Isolate. struct deno_s { @@ -29,8 +18,24 @@ struct deno_s { RecvCallback cb; void* data; }; +} + +namespace deno { + +void Print(const v8::FunctionCallbackInfo<v8::Value>& args); +void Recv(const v8::FunctionCallbackInfo<v8::Value>& args); +void Send(const v8::FunctionCallbackInfo<v8::Value>& args); +static intptr_t external_references[] = {reinterpret_cast<intptr_t>(Print), + reinterpret_cast<intptr_t>(Recv), + reinterpret_cast<intptr_t>(Send), 0}; + +Deno* NewFromSnapshot(void* data, RecvCallback cb); + +v8::StartupData MakeSnapshot(v8::StartupData* prev_natives_blob, + v8::StartupData* prev_snapshot_blob, + const char* js_filename, const char* js_source); -void deno_add_isolate(Deno* d, v8::Isolate* isolate); +void AddIsolate(Deno* d, v8::Isolate* isolate); } // namespace deno #endif // DENO_INTERNAL_H_ |