summaryrefslogtreecommitdiff
path: root/deno2/deno.cc
diff options
context:
space:
mode:
authorBert Belder <bertbelder@gmail.com>2018-06-14 14:31:31 +0200
committerBert Belder <bertbelder@gmail.com>2018-06-14 17:24:00 +0200
commit4f6c8ba54bca4f62fbe4e7dba2fc3c4a7c2f1bb2 (patch)
tree32c9b75a1bc217406952ca1b5f89f57968f37e5a /deno2/deno.cc
parentfb98474239a7ffb145e529dbcf069866b2e9296e (diff)
deno2: add global `deno` namespace
Diffstat (limited to 'deno2/deno.cc')
-rw-r--r--deno2/deno.cc12
1 files changed, 7 insertions, 5 deletions
diff --git a/deno2/deno.cc b/deno2/deno.cc
index bfd76f806..791c0db8e 100644
--- a/deno2/deno.cc
+++ b/deno2/deno.cc
@@ -213,19 +213,21 @@ void InitializeContext(v8::Isolate* isolate, v8::Local<v8::Context> context,
v8::Context::Scope context_scope(context);
auto global = context->Global();
- // TODO(ry) Add a global namespace object "deno" and move print, sub, and
- // pub inside that object.
+
+ auto deno_val = v8::Object::New(isolate);
+ CHECK(global->Set(context, deno::v8_str("deno"), deno_val).FromJust());
+
auto print_tmpl = v8::FunctionTemplate::New(isolate, Print);
auto print_val = print_tmpl->GetFunction(context).ToLocalChecked();
- CHECK(global->Set(context, deno::v8_str("denoPrint"), print_val).FromJust());
+ CHECK(deno_val->Set(context, deno::v8_str("print"), print_val).FromJust());
auto sub_tmpl = v8::FunctionTemplate::New(isolate, Sub);
auto sub_val = sub_tmpl->GetFunction(context).ToLocalChecked();
- CHECK(global->Set(context, deno::v8_str("denoSub"), sub_val).FromJust());
+ CHECK(deno_val->Set(context, deno::v8_str("sub"), sub_val).FromJust());
auto pub_tmpl = v8::FunctionTemplate::New(isolate, Pub);
auto pub_val = pub_tmpl->GetFunction(context).ToLocalChecked();
- CHECK(global->Set(context, deno::v8_str("denoPub"), pub_val).FromJust());
+ CHECK(deno_val->Set(context, deno::v8_str("pub"), pub_val).FromJust());
bool r = Execute(context, js_filename, js_source);
CHECK(r);