summaryrefslogtreecommitdiff
path: root/deno2/deno_internal.h
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2018-06-10 14:18:15 +0200
committerRyan Dahl <ry@tinyclouds.org>2018-06-10 14:18:15 +0200
commit9296b21b87eec3f01bee465fcb2b64c4ea14514b (patch)
tree9ad1d353de6ffce438fd631b60204b0fc5563a71 /deno2/deno_internal.h
parenta6880dad6534ee9e1637c5098698cf32a4f1527e (diff)
Use C linkage in deno.h
Diffstat (limited to 'deno2/deno_internal.h')
-rw-r--r--deno2/deno_internal.h31
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_