OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2008 Apple Inc. All rights reserved. |
3 * Copyright (C) 2010 Google Inc. All rights reserved. | 3 * Copyright (C) 2010 Google Inc. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * | 8 * |
9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 v8::Local<v8::debug::WasmScript> underlyingScript, String16 id, | 52 v8::Local<v8::debug::WasmScript> underlyingScript, String16 id, |
53 String16 url, String16 source); | 53 String16 url, String16 source); |
54 | 54 |
55 virtual ~V8DebuggerScript(); | 55 virtual ~V8DebuggerScript(); |
56 | 56 |
57 const String16& scriptId() const { return m_id; } | 57 const String16& scriptId() const { return m_id; } |
58 const String16& url() const { return m_url; } | 58 const String16& url() const { return m_url; } |
59 bool hasSourceURL() const { return !m_sourceURL.isEmpty(); } | 59 bool hasSourceURL() const { return !m_sourceURL.isEmpty(); } |
60 const String16& sourceURL() const; | 60 const String16& sourceURL() const; |
61 virtual const String16& sourceMappingURL() const = 0; | 61 virtual const String16& sourceMappingURL() const = 0; |
62 virtual String16 source(v8::Isolate*) const { return m_source; } | 62 virtual String16 source() const { return m_source; } |
63 const String16& hash(v8::Isolate*) const; | 63 const String16& hash() const; |
64 int startLine() const { return m_startLine; } | 64 int startLine() const { return m_startLine; } |
65 int startColumn() const { return m_startColumn; } | 65 int startColumn() const { return m_startColumn; } |
66 int endLine() const { return m_endLine; } | 66 int endLine() const { return m_endLine; } |
67 int endColumn() const { return m_endColumn; } | 67 int endColumn() const { return m_endColumn; } |
68 int executionContextId() const { return m_executionContextId; } | 68 int executionContextId() const { return m_executionContextId; } |
69 virtual bool isLiveEdit() const = 0; | 69 virtual bool isLiveEdit() const = 0; |
70 virtual bool isModule() const = 0; | 70 virtual bool isModule() const = 0; |
71 | 71 |
72 void setSourceURL(const String16&); | 72 void setSourceURL(const String16&); |
73 virtual void setSourceMappingURL(const String16&) = 0; | 73 virtual void setSourceMappingURL(const String16&) = 0; |
74 virtual void setSource(v8::Local<v8::String> source) { | 74 virtual void setSource(v8::Local<v8::String> source) { |
75 m_source = toProtocolString(source); | 75 m_source = toProtocolString(source); |
| 76 m_lineEndings.reset(nullptr); |
76 } | 77 } |
77 | 78 |
| 79 String16 lineAt(int lineNumberWithOffset, int maxLength); |
| 80 |
78 virtual bool getPossibleBreakpoints( | 81 virtual bool getPossibleBreakpoints( |
79 const v8::debug::Location& start, const v8::debug::Location& end, | 82 const v8::debug::Location& start, const v8::debug::Location& end, |
80 std::vector<v8::debug::Location>* locations) = 0; | 83 std::vector<v8::debug::Location>* locations) = 0; |
81 virtual void resetBlackboxedStateCache() = 0; | 84 virtual void resetBlackboxedStateCache() = 0; |
82 | 85 |
83 protected: | 86 protected: |
84 V8DebuggerScript(v8::Isolate*, String16 id, String16 url); | 87 V8DebuggerScript(v8::Isolate*, String16 id, String16 url); |
85 | 88 |
86 String16 m_id; | 89 String16 m_id; |
87 String16 m_url; | 90 String16 m_url; |
88 String16 m_sourceURL; | 91 String16 m_sourceURL; |
89 String16 m_source; | 92 String16 m_source; |
90 mutable String16 m_hash; | 93 mutable String16 m_hash; |
91 int m_startLine = 0; | 94 int m_startLine = 0; |
92 int m_startColumn = 0; | 95 int m_startColumn = 0; |
93 int m_endLine = 0; | 96 int m_endLine = 0; |
94 int m_endColumn = 0; | 97 int m_endColumn = 0; |
95 int m_executionContextId = 0; | 98 int m_executionContextId = 0; |
96 | 99 |
| 100 std::unique_ptr<std::vector<size_t>> m_lineEndings; |
| 101 |
97 v8::Isolate* m_isolate; | 102 v8::Isolate* m_isolate; |
98 | 103 |
99 private: | 104 private: |
100 DISALLOW_COPY_AND_ASSIGN(V8DebuggerScript); | 105 DISALLOW_COPY_AND_ASSIGN(V8DebuggerScript); |
101 }; | 106 }; |
102 | 107 |
103 } // namespace v8_inspector | 108 } // namespace v8_inspector |
104 | 109 |
105 #endif // V8_INSPECTOR_V8DEBUGGERSCRIPT_H_ | 110 #endif // V8_INSPECTOR_V8DEBUGGERSCRIPT_H_ |
OLD | NEW |