OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_DEBUG_DEBUG_INTERFACE_H_ | 5 #ifndef V8_DEBUG_DEBUG_INTERFACE_H_ |
6 #define V8_DEBUG_DEBUG_INTERFACE_H_ | 6 #define V8_DEBUG_DEBUG_INTERFACE_H_ |
7 | 7 |
8 #include "include/v8-debug.h" | 8 #include "include/v8-debug.h" |
9 #include "include/v8-util.h" | 9 #include "include/v8-util.h" |
10 #include "include/v8.h" | 10 #include "include/v8.h" |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 * Returns empty local if not called with a valid wrapper of | 191 * Returns empty local if not called with a valid wrapper of |
192 * v8::internal::Script. | 192 * v8::internal::Script. |
193 */ | 193 */ |
194 static MaybeLocal<Script> Wrap(Isolate* isolate, | 194 static MaybeLocal<Script> Wrap(Isolate* isolate, |
195 v8::Local<v8::Object> script); | 195 v8::Local<v8::Object> script); |
196 | 196 |
197 private: | 197 private: |
198 int GetSourcePosition(const Location& location) const; | 198 int GetSourcePosition(const Location& location) const; |
199 }; | 199 }; |
200 | 200 |
| 201 // Specialization for wasm Scripts. |
| 202 class WasmScript : public Script { |
| 203 public: |
| 204 static WasmScript* Cast(Script* script); |
| 205 |
| 206 int NumFunction() const; |
| 207 int NumImportedFunction() const; |
| 208 |
| 209 /** |
| 210 * Compute the disassembly of a wasm function. |
| 211 * Returns the disassembly string and a list of <byte_offset, line, column> |
| 212 * entries, mapping wasm byte offsets to line and column in the disassembly. |
| 213 * The list is guaranteed to be ordered by the byte_offset. |
| 214 */ |
| 215 std::pair<std::string, std::vector<std::tuple<uint32_t, int, int>>> |
| 216 DisassembleFunction(int function_index); |
| 217 }; |
| 218 |
201 static void GetLoadedScripts(Isolate* isolate, | 219 static void GetLoadedScripts(Isolate* isolate, |
202 PersistentValueVector<Script>& scripts); | 220 PersistentValueVector<Script>& scripts); |
203 | 221 |
204 /** | |
205 * Compute the disassembly of a wasm function. | |
206 * Returns the disassembly string and a list of <byte_offset, line, column> | |
207 * entries, mapping wasm byte offsets to line and column in the disassembly. | |
208 * The list is guaranteed to be ordered by the byte_offset. | |
209 */ | |
210 static std::pair<std::string, std::vector<std::tuple<uint32_t, int, int>>> | |
211 DisassembleWasmFunction(Isolate* isolate, v8::Local<v8::Object> script, | |
212 int function_index); | |
213 static MaybeLocal<UnboundScript> CompileInspectorScript(Isolate* isolate, | 222 static MaybeLocal<UnboundScript> CompileInspectorScript(Isolate* isolate, |
214 Local<String> source); | 223 Local<String> source); |
215 }; | 224 }; |
216 | 225 |
217 } // namespace v8 | 226 } // namespace v8 |
218 | 227 |
219 #endif // V8_DEBUG_DEBUG_INTERFACE_H_ | 228 #endif // V8_DEBUG_DEBUG_INTERFACE_H_ |
OLD | NEW |