v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
debug-stack-trace-iterator.h
Go to the documentation of this file.
1// Copyright 2017 the V8 project 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 V8_DEBUG_DEBUG_STACK_TRACE_ITERATOR_H_
6#define V8_DEBUG_DEBUG_STACK_TRACE_ITERATOR_H_
7
8#include <memory>
9
13
14namespace v8 {
15namespace internal {
16
18 public:
19 DebugStackTraceIterator(Isolate* isolate, int index);
21
22 bool Done() const override;
23 void Advance() override;
24
25 int GetContextId() const override;
27 v8::Local<v8::Value> GetReturnValue() const override;
30 debug::Location GetSourceLocation() const override;
31 debug::Location GetFunctionLocation() const override;
32 v8::Local<v8::Function> GetFunction() const override;
33 std::unique_ptr<v8::debug::ScopeIterator> GetScopeIterator() const override;
34 bool CanBeRestarted() const override;
35
37 bool throw_on_side_effect) override;
38 void PrepareRestart();
39
41
42 private:
44
47 std::unique_ptr<FrameInspector> frame_inspector_;
51};
52} // namespace internal
53} // namespace v8
54
55#endif // V8_DEBUG_DEBUG_STACK_TRACE_ITERATOR_H_
std::unique_ptr< FrameInspector > frame_inspector_
v8::Local< v8::Function > GetFunction() const override
v8::Local< v8::debug::Script > GetScript() const override
Handle< SharedFunctionInfo > GetSharedFunctionInfo() const
v8::MaybeLocal< v8::Value > GetReceiver() const override
v8::Local< v8::Value > GetReturnValue() const override
std::unique_ptr< v8::debug::ScopeIterator > GetScopeIterator() const override
debug::Location GetFunctionLocation() const override
DebugStackTraceIterator(Isolate *isolate, int index)
v8::MaybeLocal< v8::Value > Evaluate(v8::Local< v8::String > source, bool throw_on_side_effect) override
v8::Local< v8::String > GetFunctionDebugName() const override
debug::Location GetSourceLocation() const override