diff --git a/src/api/callback.cc b/src/api/callback.cc index 4083ae84879..52a8da35b67 100644 --- a/src/api/callback.cc +++ b/src/api/callback.cc @@ -96,7 +96,7 @@ void InternalCallbackScope::Close() { return; } - Environment::TickInfo* tick_info = env_->tick_info(); + TickInfo* tick_info = env_->tick_info(); if (!env_->can_call_into_js()) return; if (!tick_info->has_tick_scheduled()) { diff --git a/src/env-inl.h b/src/env-inl.h index 7481a877184..f379660004f 100644 --- a/src/env-inl.h +++ b/src/env-inl.h @@ -268,18 +268,18 @@ inline void ImmediateInfo::ref_count_dec(uint32_t decrement) { fields_[kRefCount] -= decrement; } -inline Environment::TickInfo::TickInfo(v8::Isolate* isolate) +inline TickInfo::TickInfo(v8::Isolate* isolate) : fields_(isolate, kFieldsCount) {} -inline AliasedBuffer& Environment::TickInfo::fields() { +inline AliasedBuffer& TickInfo::fields() { return fields_; } -inline bool Environment::TickInfo::has_tick_scheduled() const { +inline bool TickInfo::has_tick_scheduled() const { return fields_[kHasTickScheduled] == 1; } -inline bool Environment::TickInfo::has_rejection_to_warn() const { +inline bool TickInfo::has_rejection_to_warn() const { return fields_[kHasRejectionToWarn] == 1; } @@ -439,7 +439,7 @@ inline ImmediateInfo* Environment::immediate_info() { return &immediate_info_; } -inline Environment::TickInfo* Environment::tick_info() { +inline TickInfo* Environment::tick_info() { return &tick_info_; } diff --git a/src/env.h b/src/env.h index 27603db19e7..c7ec9670a9f 100644 --- a/src/env.h +++ b/src/env.h @@ -647,6 +647,24 @@ class ImmediateInfo { AliasedBuffer fields_; }; +class TickInfo { + public: + inline AliasedBuffer& fields(); + inline bool has_tick_scheduled() const; + inline bool has_rejection_to_warn() const; + + TickInfo(const TickInfo&) = delete; + TickInfo& operator=(const TickInfo&) = delete; + + private: + friend class Environment; // So we can call the constructor. + inline explicit TickInfo(v8::Isolate* isolate); + + enum Fields { kHasTickScheduled = 0, kHasRejectionToWarn, kFieldsCount }; + + AliasedBuffer fields_; +}; + class Environment { public: Environment(const Environment&) = delete; @@ -656,28 +674,6 @@ class Environment { inline void PushAsyncCallbackScope(); inline void PopAsyncCallbackScope(); - class TickInfo { - public: - inline AliasedBuffer& fields(); - inline bool has_tick_scheduled() const; - inline bool has_rejection_to_warn() const; - - TickInfo(const TickInfo&) = delete; - TickInfo& operator=(const TickInfo&) = delete; - - private: - friend class Environment; // So we can call the constructor. - inline explicit TickInfo(v8::Isolate* isolate); - - enum Fields { - kHasTickScheduled = 0, - kHasRejectionToWarn, - kFieldsCount - }; - - AliasedBuffer fields_; - }; - enum Flags { kNoFlags = 0, kIsMainThread = 1 << 0,