Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(128)

Side by Side Diff: runtime/vm/service/service.idl

Issue 887413003: Port type arguments to new RPC protocol (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « runtime/vm/service/message.dart ('k') | runtime/vm/service_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // 1 //
2 // TODO(turnidge): Finish writing an idl description of the service protocol. 2 // TODO(turnidge): Finish writing an idl description of the service protocol.
3 // 3 //
4 4
5 interface Service { 5 interface Service {
6 // Returns the list of breakpoints for an isolate. 6 // Returns the list of breakpoints for an isolate.
7 getBreakpoints(isolateId string) BreakpointList 7 getBreakpoints(isolateId string) BreakpointList
8 8
9 // Adds a breakpoint at the specified line. 9 // Adds a breakpoint at the specified line.
10 // 10 //
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 limit int) RetainingPath 68 limit int) RetainingPath
69 69
70 // Returns a collection of inbound references to some object. 70 // Returns a collection of inbound references to some object.
71 // 71 //
72 // TODO(turnidge): Make limit an int instead of a string. 72 // TODO(turnidge): Make limit an int instead of a string.
73 getInboundReferences(isolateId string, 73 getInboundReferences(isolateId string,
74 targetId string, 74 targetId string,
75 limit int) InboundReferences 75 limit int) InboundReferences
76 76
77 getClassList(isolateId string) ClassList 77 getClassList(isolateId string) ClassList
78
79 // When <code>onlyWithInstantiations</code> is true, the list only includes
80 // type arguments with instantiations. Otherwise, all type arguments are
81 // returned.
82 getTypeArgumentsList(isolateId string,
83 onlyWithInstantiations bool) TypeArgumentsList
78 } 84 }
79 85
80 86
81 // Every top level response returned by the Service interface extends 87 // Every top level response returned by the Service interface extends
82 // <code>Response</code>. This allows the client to distinguish 88 // <code>Response</code>. This allows the client to distinguish
83 // between different kinds of responses by using the <code>type</code> 89 // between different kinds of responses by using the <code>type</code>
84 // property. 90 // property.
85 struct Response { 91 struct Response {
86 // Every response returned by the VM Service has the 92 // Every response returned by the VM Service has the
87 // <code>type</code> property. This allows the client distinguish 93 // <code>type</code> property. This allows the client distinguish
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
132 struct CodeRef extends ObjectRef { 138 struct CodeRef extends ObjectRef {
133 placeholder int 139 placeholder int
134 } 140 }
135 141
136 142
137 struct ClassRef extends ObjectRef { 143 struct ClassRef extends ObjectRef {
138 placeholder int 144 placeholder int
139 } 145 }
140 146
141 147
148 struct TypeArgumentsRef extends ObjectRef {
149 placeholder int
150 }
151
152
142 // A <code>FunctionRef</code> encodes a reference to a <code>Function</code> obj ect. 153 // A <code>FunctionRef</code> encodes a reference to a <code>Function</code> obj ect.
143 struct FunctionRef extends ObjectRef { 154 struct FunctionRef extends ObjectRef {
144 placeholder int 155 placeholder int
145 } 156 }
146 157
147 158
148 // A <code>FieldRef</code> encodes a reference to a <code>Field</code> object. 159 // A <code>FieldRef</code> encodes a reference to a <code>Field</code> object.
149 struct FieldRef extends ObjectRef { 160 struct FieldRef extends ObjectRef {
150 placeholder int 161 placeholder int
151 } 162 }
152 163
153 164
154 // A <code>InstanceRef</code> encodes a reference to a <code>Instance</code> obj ect. 165 // A <code>InstanceRef</code> encodes a reference to a <code>Instance</code> obj ect.
155 struct InstanceRef extends ObjectRef { 166 struct InstanceRef extends ObjectRef {
156 placeholder int 167 placeholder int
157 } 168 }
158 169
159 170
160 // A <code>ScriptRef</code> encodes a reference to a <code>Script</code> object. 171 // A <code>ScriptRef</code> encodes a reference to a <code>Script</code> object.
161 struct ScriptRef extends ObjectRef { 172 struct ScriptRef extends ObjectRef {
162 placeholder int 173 placeholder int
163 } 174 }
164 175
165 176
166 struct Class extends Object { 177 struct Class extends Object {
167 placeholder int 178 placeholder int
168 } 179 }
169 180
170 181
182 struct TypeArguments extends Object {
183 placeholder int
184 }
185
186
171 // A <code>Location</code> encodes a location withing a dart script. 187 // A <code>Location</code> encodes a location withing a dart script.
172 // 188 //
173 // TODO(turnidge): Should this really be broken out as its own type? 189 // TODO(turnidge): Should this really be broken out as its own type?
174 // If so, we should use it more consistently in the api. For example, 190 // If so, we should use it more consistently in the api. For example,
175 // in Frame. 191 // in Frame.
176 struct Location { 192 struct Location {
177 script ScriptRef 193 script ScriptRef
178 tokenPos int 194 tokenPos int
179 } 195 }
180 196
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
282 source InstanceRef 298 source InstanceRef
283 slot int 299 slot int
284 } 300 }
285 301
286 302
287 struct ClassList { 303 struct ClassList {
288 classes []ClassRef 304 classes []ClassRef
289 } 305 }
290 306
291 307
308 struct TypeArgumentsList {
309 tableSize int
310 tableUsed int
311 typeArguments []TypeArgumentsRef
312 }
313
314
292 // A <code>GCOption</code> is used to indicate which form of garbage 315 // A <code>GCOption</code> is used to indicate which form of garbage
293 // collection is requested. 316 // collection is requested.
294 enum GCOption { 317 enum GCOption {
295 full 318 full
296 } 319 }
297 320
298 // A <code>StepOption</code> is used to indicate which form of 321 // A <code>StepOption</code> is used to indicate which form of
299 // single-stepping is requested. 322 // single-stepping is requested.
300 enum StepOption { 323 enum StepOption {
301 into 324 into
302 over 325 over
303 out 326 out
304 } 327 }
305 328
306 // A <code>TagSelector</code> is used to indicate which sets of tags 329 // A <code>TagSelector</code> is used to indicate which sets of tags
307 // should take precedence in a cpu profile. 330 // should take precedence in a cpu profile.
308 enum TagSelector { 331 enum TagSelector {
309 UserVM 332 UserVM
310 UserOnly 333 UserOnly
311 VMUser 334 VMUser
312 VMOnly 335 VMOnly
313 None 336 None
314 } 337 }
315 338
OLDNEW
« no previous file with comments | « runtime/vm/service/message.dart ('k') | runtime/vm/service_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698