Index: src/base/platform/time.h |
diff --git a/src/base/platform/time.h b/src/base/platform/time.h |
index be62014f91db7e0535d47cc7aa25737d9c1801f9..ed1751268f59bf49abb934c718937c4d72d4eccd 100644 |
--- a/src/base/platform/time.h |
+++ b/src/base/platform/time.h |
@@ -9,6 +9,7 @@ |
#include <iosfwd> |
#include <limits> |
+#include "src/base/base-export.h" |
#include "src/base/bits.h" |
#include "src/base/macros.h" |
#include "src/base/safe_math.h" |
@@ -42,7 +43,7 @@ class TimeBase; |
// This class represents a duration of time, internally represented in |
// microseonds. |
-class TimeDelta final { |
+class V8_BASE_EXPORT TimeDelta final { |
public: |
TimeDelta() : delta_(0) {} |
@@ -277,7 +278,7 @@ class TimeBase { |
// This class represents an absolute point in time, internally represented as |
// microseconds (s/1,000,000) since 00:00:00 UTC, January 1, 1970. |
-class Time final : public time_internal::TimeBase<Time> { |
+class V8_BASE_EXPORT Time final : public time_internal::TimeBase<Time> { |
public: |
// Contains the NULL time. Use Time::Now() to get the current time. |
Time() : TimeBase(0) {} |
@@ -322,7 +323,7 @@ class Time final : public time_internal::TimeBase<Time> { |
explicit Time(int64_t us) : TimeBase(us) {} |
}; |
-std::ostream& operator<<(std::ostream&, const Time&); |
+V8_BASE_EXPORT std::ostream& operator<<(std::ostream&, const Time&); |
inline Time operator+(const TimeDelta& delta, const Time& time) { |
return time + delta; |
@@ -339,7 +340,8 @@ inline Time operator+(const TimeDelta& delta, const Time& time) { |
// Time::Now() may actually decrease or jump). But note that TimeTicks may |
// "stand still", for example if the computer suspended. |
-class TimeTicks final : public time_internal::TimeBase<TimeTicks> { |
+class V8_BASE_EXPORT TimeTicks final |
+ : public time_internal::TimeBase<TimeTicks> { |
public: |
TimeTicks() : TimeBase(0) {} |
@@ -376,7 +378,8 @@ inline TimeTicks operator+(const TimeDelta& delta, const TimeTicks& ticks) { |
// Represents a clock, specific to a particular thread, than runs only while the |
// thread is running. |
-class ThreadTicks final : public time_internal::TimeBase<ThreadTicks> { |
+class V8_BASE_EXPORT ThreadTicks final |
+ : public time_internal::TimeBase<ThreadTicks> { |
public: |
ThreadTicks() : TimeBase(0) {} |
@@ -408,6 +411,9 @@ class ThreadTicks final : public time_internal::TimeBase<ThreadTicks> { |
#endif |
private: |
+ template <class TimeClass> |
+ friend class time_internal::TimeBase; |
+ |
// Please use Now() or GetForThread() to create a new object. This is for |
// internal use and testing. Ticks are in microseconds. |
explicit ThreadTicks(int64_t ticks) : TimeBase(ticks) {} |