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

Side by Side Diff: runtime/bin/vmservice_impl.cc

Issue 2974233002: VM: Re-format to use at most one newline between functions (Closed)
Patch Set: Rebase and merge Created 3 years, 5 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
« no previous file with comments | « runtime/bin/vmservice_dartium.cc ('k') | runtime/include/dart_api.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "bin/vmservice_impl.h" 5 #include "bin/vmservice_impl.h"
6 6
7 #include "include/dart_api.h" 7 #include "include/dart_api.h"
8 8
9 #include "bin/builtin.h" 9 #include "bin/builtin.h"
10 #include "bin/dartutils.h" 10 #include "bin/dartutils.h"
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 return NULL; 85 return NULL;
86 } 86 }
87 static ResourcesEntry* ResourcesTable() { 87 static ResourcesEntry* ResourcesTable() {
88 return &__service_bin_resources_[0]; 88 return &__service_bin_resources_[0];
89 } 89 }
90 90
91 DISALLOW_ALLOCATION(); 91 DISALLOW_ALLOCATION();
92 DISALLOW_IMPLICIT_CONSTRUCTORS(Resources); 92 DISALLOW_IMPLICIT_CONSTRUCTORS(Resources);
93 }; 93 };
94 94
95
96 void NotifyServerState(Dart_NativeArguments args) { 95 void NotifyServerState(Dart_NativeArguments args) {
97 Dart_EnterScope(); 96 Dart_EnterScope();
98 const char* uri_chars; 97 const char* uri_chars;
99 Dart_Handle uri_arg = Dart_GetNativeArgument(args, 0); 98 Dart_Handle uri_arg = Dart_GetNativeArgument(args, 0);
100 if (Dart_IsError(uri_arg)) { 99 if (Dart_IsError(uri_arg)) {
101 VmService::SetServerAddress(""); 100 VmService::SetServerAddress("");
102 Dart_ExitScope(); 101 Dart_ExitScope();
103 return; 102 return;
104 } 103 }
105 Dart_Handle result = Dart_StringToCString(uri_arg, &uri_chars); 104 Dart_Handle result = Dart_StringToCString(uri_arg, &uri_chars);
106 if (Dart_IsError(result)) { 105 if (Dart_IsError(result)) {
107 VmService::SetServerAddress(""); 106 VmService::SetServerAddress("");
108 Dart_ExitScope(); 107 Dart_ExitScope();
109 return; 108 return;
110 } 109 }
111 VmService::SetServerAddress(uri_chars); 110 VmService::SetServerAddress(uri_chars);
112 Dart_ExitScope(); 111 Dart_ExitScope();
113 } 112 }
114 113
115
116 static void Shutdown(Dart_NativeArguments args) { 114 static void Shutdown(Dart_NativeArguments args) {
117 // NO-OP. 115 // NO-OP.
118 } 116 }
119 117
120
121 struct VmServiceIONativeEntry { 118 struct VmServiceIONativeEntry {
122 const char* name; 119 const char* name;
123 int num_arguments; 120 int num_arguments;
124 Dart_NativeFunction function; 121 Dart_NativeFunction function;
125 }; 122 };
126 123
127
128 static VmServiceIONativeEntry _VmServiceIONativeEntries[] = { 124 static VmServiceIONativeEntry _VmServiceIONativeEntries[] = {
129 {"VMServiceIO_NotifyServerState", 1, NotifyServerState}, 125 {"VMServiceIO_NotifyServerState", 1, NotifyServerState},
130 {"VMServiceIO_Shutdown", 0, Shutdown}, 126 {"VMServiceIO_Shutdown", 0, Shutdown},
131 }; 127 };
132 128
133
134 static Dart_NativeFunction VmServiceIONativeResolver(Dart_Handle name, 129 static Dart_NativeFunction VmServiceIONativeResolver(Dart_Handle name,
135 int num_arguments, 130 int num_arguments,
136 bool* auto_setup_scope) { 131 bool* auto_setup_scope) {
137 const char* function_name = NULL; 132 const char* function_name = NULL;
138 Dart_Handle result = Dart_StringToCString(name, &function_name); 133 Dart_Handle result = Dart_StringToCString(name, &function_name);
139 ASSERT(!Dart_IsError(result)); 134 ASSERT(!Dart_IsError(result));
140 ASSERT(function_name != NULL); 135 ASSERT(function_name != NULL);
141 *auto_setup_scope = true; 136 *auto_setup_scope = true;
142 intptr_t n = 137 intptr_t n =
143 sizeof(_VmServiceIONativeEntries) / sizeof(_VmServiceIONativeEntries[0]); 138 sizeof(_VmServiceIONativeEntries) / sizeof(_VmServiceIONativeEntries[0]);
144 for (intptr_t i = 0; i < n; i++) { 139 for (intptr_t i = 0; i < n; i++) {
145 VmServiceIONativeEntry entry = _VmServiceIONativeEntries[i]; 140 VmServiceIONativeEntry entry = _VmServiceIONativeEntries[i];
146 if ((strcmp(function_name, entry.name) == 0) && 141 if ((strcmp(function_name, entry.name) == 0) &&
147 (num_arguments == entry.num_arguments)) { 142 (num_arguments == entry.num_arguments)) {
148 return entry.function; 143 return entry.function;
149 } 144 }
150 } 145 }
151 return NULL; 146 return NULL;
152 } 147 }
153 148
154
155 const char* VmService::error_msg_ = NULL; 149 const char* VmService::error_msg_ = NULL;
156 char VmService::server_uri_[kServerUriStringBufferSize]; 150 char VmService::server_uri_[kServerUriStringBufferSize];
157 151
158
159 bool VmService::LoadForGenPrecompiled(void* vmservice_kernel) { 152 bool VmService::LoadForGenPrecompiled(void* vmservice_kernel) {
160 Dart_Handle result; 153 Dart_Handle result;
161 Dart_SetLibraryTagHandler(LibraryTagHandler); 154 Dart_SetLibraryTagHandler(LibraryTagHandler);
162 Dart_Handle library; 155 Dart_Handle library;
163 if (vmservice_kernel != NULL) { 156 if (vmservice_kernel != NULL) {
164 library = Dart_LoadLibrary( 157 library = Dart_LoadLibrary(
165 Dart_NewStringFromCString(kVMServiceIOLibraryUri), Dart_Null(), 158 Dart_NewStringFromCString(kVMServiceIOLibraryUri), Dart_Null(),
166 reinterpret_cast<Dart_Handle>(vmservice_kernel), 0, 0); 159 reinterpret_cast<Dart_Handle>(vmservice_kernel), 0, 0);
167 } else { 160 } else {
168 library = LookupOrLoadLibrary(kVMServiceIOLibraryScriptResourceName); 161 library = LookupOrLoadLibrary(kVMServiceIOLibraryScriptResourceName);
169 } 162 }
170 ASSERT(library != Dart_Null()); 163 ASSERT(library != Dart_Null());
171 SHUTDOWN_ON_ERROR(library); 164 SHUTDOWN_ON_ERROR(library);
172 result = Dart_SetNativeResolver(library, VmServiceIONativeResolver, NULL); 165 result = Dart_SetNativeResolver(library, VmServiceIONativeResolver, NULL);
173 SHUTDOWN_ON_ERROR(result); 166 SHUTDOWN_ON_ERROR(result);
174 result = Dart_FinalizeLoading(false); 167 result = Dart_FinalizeLoading(false);
175 SHUTDOWN_ON_ERROR(result); 168 SHUTDOWN_ON_ERROR(result);
176 return true; 169 return true;
177 } 170 }
178 171
179
180 bool VmService::Setup(const char* server_ip, 172 bool VmService::Setup(const char* server_ip,
181 intptr_t server_port, 173 intptr_t server_port,
182 bool running_precompiled, 174 bool running_precompiled,
183 bool dev_mode_server, 175 bool dev_mode_server,
184 bool trace_loading) { 176 bool trace_loading) {
185 Dart_Isolate isolate = Dart_CurrentIsolate(); 177 Dart_Isolate isolate = Dart_CurrentIsolate();
186 ASSERT(isolate != NULL); 178 ASSERT(isolate != NULL);
187 SetServerAddress(""); 179 SetServerAddress("");
188 180
189 Dart_Handle result; 181 Dart_Handle result;
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
284 SHUTDOWN_ON_ERROR(function_name); 276 SHUTDOWN_ON_ERROR(function_name);
285 Dart_Handle signal_watch = Dart_Invoke(io_lib, function_name, 0, NULL); 277 Dart_Handle signal_watch = Dart_Invoke(io_lib, function_name, 0, NULL);
286 SHUTDOWN_ON_ERROR(signal_watch); 278 SHUTDOWN_ON_ERROR(signal_watch);
287 Dart_Handle field_name = Dart_NewStringFromCString("_signalWatch"); 279 Dart_Handle field_name = Dart_NewStringFromCString("_signalWatch");
288 SHUTDOWN_ON_ERROR(field_name); 280 SHUTDOWN_ON_ERROR(field_name);
289 result = Dart_SetField(library, field_name, signal_watch); 281 result = Dart_SetField(library, field_name, signal_watch);
290 SHUTDOWN_ON_ERROR(field_name); 282 SHUTDOWN_ON_ERROR(field_name);
291 return true; 283 return true;
292 } 284 }
293 285
294
295 const char* VmService::GetErrorMessage() { 286 const char* VmService::GetErrorMessage() {
296 return (error_msg_ == NULL) ? "No error." : error_msg_; 287 return (error_msg_ == NULL) ? "No error." : error_msg_;
297 } 288 }
298 289
299
300 void VmService::SetServerAddress(const char* server_uri) { 290 void VmService::SetServerAddress(const char* server_uri) {
301 if (server_uri == NULL) { 291 if (server_uri == NULL) {
302 server_uri = ""; 292 server_uri = "";
303 } 293 }
304 const intptr_t server_uri_len = strlen(server_uri); 294 const intptr_t server_uri_len = strlen(server_uri);
305 if (server_uri_len >= (kServerUriStringBufferSize - 1)) { 295 if (server_uri_len >= (kServerUriStringBufferSize - 1)) {
306 FATAL1("vm-service: Server URI exceeded length: %s\n", server_uri); 296 FATAL1("vm-service: Server URI exceeded length: %s\n", server_uri);
307 } 297 }
308 strncpy(server_uri_, server_uri, kServerUriStringBufferSize); 298 strncpy(server_uri_, server_uri, kServerUriStringBufferSize);
309 server_uri_[kServerUriStringBufferSize - 1] = '\0'; 299 server_uri_[kServerUriStringBufferSize - 1] = '\0';
310 } 300 }
311 301
312
313 Dart_Handle VmService::GetSource(const char* name) { 302 Dart_Handle VmService::GetSource(const char* name) {
314 const intptr_t kBufferSize = 512; 303 const intptr_t kBufferSize = 512;
315 char buffer[kBufferSize]; 304 char buffer[kBufferSize];
316 snprintf(&buffer[0], kBufferSize - 1, "%s/%s", kLibrarySourceNamePrefix, 305 snprintf(&buffer[0], kBufferSize - 1, "%s/%s", kLibrarySourceNamePrefix,
317 name); 306 name);
318 const char* vmservice_source = NULL; 307 const char* vmservice_source = NULL;
319 int r = Resources::ResourceLookup(buffer, &vmservice_source); 308 int r = Resources::ResourceLookup(buffer, &vmservice_source);
320 if (r == Resources::kNoSuchInstance) { 309 if (r == Resources::kNoSuchInstance) {
321 FATAL1("vm-service: Could not find embedded source file: %s ", buffer); 310 FATAL1("vm-service: Could not find embedded source file: %s ", buffer);
322 } 311 }
323 ASSERT(r != Resources::kNoSuchInstance); 312 ASSERT(r != Resources::kNoSuchInstance);
324 return Dart_NewStringFromCString(vmservice_source); 313 return Dart_NewStringFromCString(vmservice_source);
325 } 314 }
326 315
327
328 Dart_Handle VmService::LoadScript(const char* name) { 316 Dart_Handle VmService::LoadScript(const char* name) {
329 Dart_Handle uri = Dart_NewStringFromCString(kVMServiceIOLibraryUri); 317 Dart_Handle uri = Dart_NewStringFromCString(kVMServiceIOLibraryUri);
330 Dart_Handle source = GetSource(name); 318 Dart_Handle source = GetSource(name);
331 return Dart_LoadScript(uri, Dart_Null(), source, 0, 0); 319 return Dart_LoadScript(uri, Dart_Null(), source, 0, 0);
332 } 320 }
333 321
334
335 Dart_Handle VmService::LookupOrLoadLibrary(const char* name) { 322 Dart_Handle VmService::LookupOrLoadLibrary(const char* name) {
336 Dart_Handle uri = Dart_NewStringFromCString(kVMServiceIOLibraryUri); 323 Dart_Handle uri = Dart_NewStringFromCString(kVMServiceIOLibraryUri);
337 Dart_Handle library = Dart_LookupLibrary(uri); 324 Dart_Handle library = Dart_LookupLibrary(uri);
338 if (!Dart_IsLibrary(library)) { 325 if (!Dart_IsLibrary(library)) {
339 Dart_Handle source = GetSource(name); 326 Dart_Handle source = GetSource(name);
340 library = Dart_LoadLibrary(uri, Dart_Null(), source, 0, 0); 327 library = Dart_LoadLibrary(uri, Dart_Null(), source, 0, 0);
341 } 328 }
342 return library; 329 return library;
343 } 330 }
344 331
345
346 Dart_Handle VmService::LoadSource(Dart_Handle library, const char* name) { 332 Dart_Handle VmService::LoadSource(Dart_Handle library, const char* name) {
347 Dart_Handle uri = Dart_NewStringFromCString(name); 333 Dart_Handle uri = Dart_NewStringFromCString(name);
348 Dart_Handle source = GetSource(name); 334 Dart_Handle source = GetSource(name);
349 return Dart_LoadSource(library, uri, Dart_Null(), source, 0, 0); 335 return Dart_LoadSource(library, uri, Dart_Null(), source, 0, 0);
350 } 336 }
351 337
352
353 Dart_Handle VmService::LibraryTagHandler(Dart_LibraryTag tag, 338 Dart_Handle VmService::LibraryTagHandler(Dart_LibraryTag tag,
354 Dart_Handle library, 339 Dart_Handle library,
355 Dart_Handle url) { 340 Dart_Handle url) {
356 if (!Dart_IsLibrary(library)) { 341 if (!Dart_IsLibrary(library)) {
357 return Dart_NewApiError("not a library"); 342 return Dart_NewApiError("not a library");
358 } 343 }
359 if (!Dart_IsString(url)) { 344 if (!Dart_IsString(url)) {
360 return Dart_NewApiError("url is not a string"); 345 return Dart_NewApiError("url is not a string");
361 } 346 }
362 const char* url_string = NULL; 347 const char* url_string = NULL;
(...skipping 16 matching lines...) Expand all
379 // url is already canonicalized. 364 // url is already canonicalized.
380 return url; 365 return url;
381 } 366 }
382 Dart_Handle source = GetSource(url_string); 367 Dart_Handle source = GetSource(url_string);
383 if (Dart_IsError(source)) { 368 if (Dart_IsError(source)) {
384 return source; 369 return source;
385 } 370 }
386 return Dart_LoadSource(library, url, Dart_Null(), source, 0, 0); 371 return Dart_LoadSource(library, url, Dart_Null(), source, 0, 0);
387 } 372 }
388 373
389
390 } // namespace bin 374 } // namespace bin
391 } // namespace dart 375 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/bin/vmservice_dartium.cc ('k') | runtime/include/dart_api.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698