|
1 // Copyright (c) 2009 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 package org.chromium.sdk.internal.tools.v8; |
|
6 |
|
7 /** |
|
8 * Events, command and response types and keys for the V8 Debugger |
|
9 * protocol messages. |
|
10 */ |
|
11 public enum V8Protocol implements CharSequence { |
|
12 |
|
13 KEY_SEQ("seq"), |
|
14 |
|
15 KEY_REQSEQ("request_seq"), |
|
16 |
|
17 KEY_TYPE("type"), |
|
18 |
|
19 TYPE_EVENT("event"), |
|
20 |
|
21 /** |
|
22 * VM state. |
|
23 */ |
|
24 KEY_RUNNING("running"), |
|
25 |
|
26 TYPE_RESPONSE("response"), |
|
27 |
|
28 TYPE_REQUEST("request"), |
|
29 |
|
30 COMMAND_CONTINUE("continue"), |
|
31 |
|
32 COMMAND_EVALUATE("evaluate"), |
|
33 |
|
34 COMMAND_BACKTRACE("backtrace"), |
|
35 |
|
36 COMMAND_FRAME("frame"), |
|
37 |
|
38 COMMAND_SCRIPTS("scripts"), |
|
39 |
|
40 COMMAND_SOURCE("source"), |
|
41 |
|
42 COMMAND_SETBP("setbreakpoint"), |
|
43 |
|
44 KEY_COMMAND("command"), |
|
45 |
|
46 KEY_SUCCESS("success"), |
|
47 |
|
48 KEY_MESSAGE("message"), |
|
49 |
|
50 KEY_BODY("body"), |
|
51 |
|
52 KEY_V8_VERSION("V8Version"), |
|
53 |
|
54 FRAME_RECEIVER("receiver"), |
|
55 |
|
56 FRAME_FUNC("func"), |
|
57 |
|
58 BODY_INDEX("index"), |
|
59 |
|
60 BODY_LOCALS("locals"), |
|
61 |
|
62 BODY_SCOPES("scopes"), |
|
63 |
|
64 BODY_ARGUMENTS("arguments"), |
|
65 |
|
66 FRAME_SCRIPT("script"), |
|
67 |
|
68 ARGUMENT_NAME("name"), |
|
69 |
|
70 ARGUMENT_VALUE("value"), |
|
71 |
|
72 LOCAL_NAME("name"), |
|
73 |
|
74 LOCAL_VALUE("value"), |
|
75 |
|
76 FRAME_REFS("refs"), |
|
77 |
|
78 INFERRED_NAME("inferredName"), |
|
79 |
|
80 /** |
|
81 * Ref handle object. It contains name, value, type, handle (ref #). |
|
82 */ |
|
83 REF_HANDLE("handle"), |
|
84 |
|
85 REF_TEXT("text"), |
|
86 |
|
87 REF_TYPE("type"), |
|
88 |
|
89 /** |
|
90 * A primitive type value. |
|
91 */ |
|
92 REF_VALUE("value"), |
|
93 |
|
94 /** |
|
95 * A string-type value length. |
|
96 */ |
|
97 REF_LENGTH("length"), |
|
98 |
|
99 /** |
|
100 * Object properties. |
|
101 */ |
|
102 REF_PROPERTIES("properties"), |
|
103 |
|
104 REF_PROP_NAME("name"), |
|
105 |
|
106 REF_CONSTRUCTORFUNCTION("constructorFunction"), |
|
107 |
|
108 REF_PROTOOBJECT("protoObject"), |
|
109 |
|
110 REF_PROTOTYPEOBJECT("prototypeObject"), |
|
111 |
|
112 REF_CLASSNAME("className"), |
|
113 |
|
114 REF_PROP_TYPE("propertyType"), |
|
115 |
|
116 BODY_FRAMES("frames"), |
|
117 |
|
118 BODY_FRAME_TEXT("text"), |
|
119 |
|
120 BODY_FRAME_LINE("line"), |
|
121 |
|
122 BODY_FRAME_SRCLINE("sourceLineText"), |
|
123 |
|
124 BODY_SOURCELINE("sourceLine"), |
|
125 |
|
126 BODY_SOURCECOLUMN("sourceColumn"), |
|
127 |
|
128 BODY_FRAME_POSITION("position"), |
|
129 |
|
130 BREAK_BODY("body"), |
|
131 |
|
132 BREAK_BREAKPOINTS("breakpoints"), |
|
133 |
|
134 KEY_EVENT("event"), |
|
135 |
|
136 EVENT_BREAK("break"), |
|
137 |
|
138 EVENT_EXCEPTION("exception"), |
|
139 |
|
140 /** |
|
141 * Scripts and Source response. |
|
142 */ |
|
143 SOURCE_CODE("source"), |
|
144 |
|
145 /** |
|
146 * Script name. |
|
147 */ |
|
148 BODY_NAME("name"), |
|
149 |
|
150 BODY_LINEOFFSET("lineOffset"), |
|
151 |
|
152 BODY_LINECOUNT("lineCount"), |
|
153 |
|
154 BODY_SCRIPT_TYPE("scriptType"), |
|
155 |
|
156 BODY_SOURCE("body"), |
|
157 |
|
158 BODY_SETBP("body"), |
|
159 |
|
160 BODY_BREAKPOINT("breakpoint"), |
|
161 |
|
162 BODY_TYPE("type"), |
|
163 |
|
164 EVAL_BODY("body"), |
|
165 |
|
166 REF("ref"), |
|
167 |
|
168 ID("id"), |
|
169 |
|
170 DATA("data"), |
|
171 |
|
172 CONTEXT("context"), |
|
173 |
|
174 EXCEPTION("exception"), |
|
175 |
|
176 UNCAUGHT("uncaught"), |
|
177 |
|
178 ; |
|
179 |
|
180 public final String key; |
|
181 |
|
182 private V8Protocol(String key) { |
|
183 this.key = key; |
|
184 } |
|
185 |
|
186 public char charAt(int index) { |
|
187 return key.charAt(index); |
|
188 } |
|
189 |
|
190 public int length() { |
|
191 return key.length(); |
|
192 } |
|
193 |
|
194 public CharSequence subSequence(int start, int end) { |
|
195 return key.subSequence(start, end); |
|
196 } |
|
197 |
|
198 @Override |
|
199 public String toString() { |
|
200 return key; |
|
201 } |
|
202 } |