Home | History | Annotate | Download | only in inspector
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef ScriptAsyncCallStack_h
      6 #define ScriptAsyncCallStack_h
      7 
      8 #include "core/InspectorTypeBuilder.h"
      9 #include "core/inspector/ScriptCallStack.h"
     10 #include "platform/heap/Handle.h"
     11 #include "wtf/Forward.h"
     12 #include "wtf/RefCounted.h"
     13 
     14 namespace blink {
     15 
     16 class ScriptAsyncCallStack : public RefCountedWillBeGarbageCollectedFinalized<ScriptAsyncCallStack> {
     17     DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(ScriptAsyncCallStack);
     18 public:
     19     static PassRefPtrWillBeRawPtr<ScriptAsyncCallStack> create(const String&, PassRefPtrWillBeRawPtr<ScriptCallStack>, PassRefPtrWillBeRawPtr<ScriptAsyncCallStack>);
     20 
     21     PassRefPtr<TypeBuilder::Console::AsyncStackTrace> buildInspectorObject() const;
     22 
     23     void trace(Visitor*);
     24 
     25 private:
     26     ScriptAsyncCallStack(const String&, PassRefPtrWillBeRawPtr<ScriptCallStack>, PassRefPtrWillBeRawPtr<ScriptAsyncCallStack>);
     27 
     28     String m_description;
     29     RefPtrWillBeMember<ScriptCallStack> m_callStack;
     30     RefPtrWillBeMember<ScriptAsyncCallStack> m_asyncStackTrace;
     31 };
     32 
     33 } // namespace blink
     34 
     35 #endif // ScriptAsyncCallStack_h
     36