Bug 1642744 [wpt PR 23920] - [ScrollTimeline] Update compositor timeline from blink...
[gecko.git] / devtools / platform / nsJSInspector.h
blob61cc864976b98c5b5255ef3020215af58ebb972c
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2; -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 #ifndef COMPONENTS_JSINSPECTOR_H
7 #define COMPONENTS_JSINSPECTOR_H
9 #include "nsIJSInspector.h"
10 #include "mozilla/Attributes.h"
11 #include "nsCycleCollectionParticipant.h"
12 #include "nsTArray.h"
13 #include "js/Value.h"
14 #include "js/RootingAPI.h"
16 namespace mozilla {
17 namespace jsinspector {
19 class nsJSInspector final : public nsIJSInspector {
20 public:
21 NS_DECL_CYCLE_COLLECTING_ISUPPORTS
22 NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsJSInspector)
23 NS_DECL_NSIJSINSPECTOR
25 nsJSInspector();
27 private:
28 ~nsJSInspector();
30 uint32_t mNestedLoopLevel;
31 nsTArray<JS::Heap<JS::Value> > mRequestors;
32 JS::Heap<JS::Value> mLastRequestor;
35 } // namespace jsinspector
36 } // namespace mozilla
38 #endif