summaryrefslogtreecommitdiff
path: root/src/env.cc
diff options
context:
space:
mode:
authorAnatoli Papirovski <apapirovski@mac.com>2018-02-04 11:48:21 -0500
committerAnatoli Papirovski <apapirovski@mac.com>2018-02-07 12:21:41 -0500
commit1573e4563a0d3f6c08a1dd3ab3d161bece532db5 (patch)
tree0962ff7697c62bccd291e361e276a13e4b93c78e /src/env.cc
parentd0e4d4e0a1ffd665f24ecd2ae91445adbc2b011d (diff)
downloadandroid-node-v8-1573e4563a0d3f6c08a1dd3ab3d161bece532db5.tar.gz
android-node-v8-1573e4563a0d3f6c08a1dd3ab3d161bece532db5.tar.bz2
android-node-v8-1573e4563a0d3f6c08a1dd3ab3d161bece532db5.zip
src: move GetNow to Environment
PR-URL: https://github.com/nodejs/node/pull/18562 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Diffstat (limited to 'src/env.cc')
-rw-r--r--src/env.cc15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/env.cc b/src/env.cc
index 1b3323eb26..07e37498c8 100644
--- a/src/env.cc
+++ b/src/env.cc
@@ -11,13 +11,16 @@ namespace node {
using v8::Context;
using v8::FunctionTemplate;
using v8::HandleScope;
+using v8::Integer;
using v8::Isolate;
using v8::Local;
using v8::Message;
+using v8::Number;
using v8::Private;
using v8::StackFrame;
using v8::StackTrace;
using v8::String;
+using v8::Value;
IsolateData::IsolateData(Isolate* isolate,
uv_loop_t* event_loop,
@@ -362,6 +365,18 @@ void Environment::ToggleImmediateRef(bool ref) {
}
+Local<Value> Environment::GetNow() {
+ uv_update_time(event_loop());
+ uint64_t now = uv_now(event_loop());
+ CHECK_GE(now, timer_base());
+ now -= timer_base();
+ if (now <= 0xffffffff)
+ return Integer::New(isolate(), static_cast<uint32_t>(now));
+ else
+ return Number::New(isolate(), static_cast<double>(now));
+}
+
+
void CollectExceptionInfo(Environment* env,
v8::Local<v8::Object> obj,
int errorno,