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

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

Issue 52903002: Remove dart:io Options class. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 1 month 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 | « no previous file | sdk/lib/io/io.dart » ('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) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 <stdlib.h> 5 #include <stdlib.h>
6 #include <string.h> 6 #include <string.h>
7 #include <stdio.h> 7 #include <stdio.h>
8 8
9 #include "include/dart_api.h" 9 #include "include/dart_api.h"
10 #include "include/dart_debugger_api.h" 10 #include "include/dart_debugger_api.h"
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after
385 } 385 }
386 Dart_Handle result = Dart_ListSetAt(dart_arguments, i, argument_value); 386 Dart_Handle result = Dart_ListSetAt(dart_arguments, i, argument_value);
387 if (Dart_IsError(result)) { 387 if (Dart_IsError(result)) {
388 return result; 388 return result;
389 } 389 }
390 } 390 }
391 return dart_arguments; 391 return dart_arguments;
392 } 392 }
393 393
394 394
395 static Dart_Handle SetupRuntimeOptions(CommandLineOptions* options) {
396 Dart_Handle dart_arguments = CreateRuntimeOptions(options);
397 if (Dart_IsError(dart_arguments)) {
398 return dart_arguments;
399 }
400 Dart_Handle io_lib_url = DartUtils::NewString("dart:io");
401 if (Dart_IsError(io_lib_url)) {
402 return io_lib_url;
403 }
404 Dart_Handle io_lib = Dart_LookupLibrary(io_lib_url);
405 if (Dart_IsError(io_lib)) {
406 return io_lib;
407 }
408 Dart_Handle runtime_options_class_name = DartUtils::NewString("_OptionsImpl");
409 if (Dart_IsError(runtime_options_class_name)) {
410 return runtime_options_class_name;
411 }
412 Dart_Handle runtime_options_type = Dart_GetType(
413 io_lib, runtime_options_class_name, 0, NULL);
414 if (Dart_IsError(runtime_options_type)) {
415 return runtime_options_type;
416 }
417 Dart_Handle native_name = DartUtils::NewString("_nativeArguments");
418 if (Dart_IsError(native_name)) {
419 return native_name;
420 }
421
422 return Dart_SetField(runtime_options_type, native_name, dart_arguments);
423 }
424
425
426 #define CHECK_RESULT(result) \ 395 #define CHECK_RESULT(result) \
427 if (Dart_IsError(result)) { \ 396 if (Dart_IsError(result)) { \
428 *error = strdup(Dart_GetError(result)); \ 397 *error = strdup(Dart_GetError(result)); \
429 *is_compile_error = Dart_IsCompilationError(result); \ 398 *is_compile_error = Dart_IsCompilationError(result); \
430 Dart_ExitScope(); \ 399 Dart_ExitScope(); \
431 Dart_ShutdownIsolate(); \ 400 Dart_ShutdownIsolate(); \
432 return NULL; \ 401 return NULL; \
433 } \ 402 } \
434 403
435 404
(...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after
854 } 823 }
855 } 824 }
856 825
857 if (has_check_function_fingerprints) { 826 if (has_check_function_fingerprints) {
858 result = Dart_CheckFunctionFingerprints(); 827 result = Dart_CheckFunctionFingerprints();
859 if (Dart_IsError(result)) { 828 if (Dart_IsError(result)) {
860 return DartErrorExit(result); 829 return DartErrorExit(result);
861 } 830 }
862 } 831 }
863 832
864 // Create a dart options object that can be accessed from dart code.
865 Dart_Handle options_result = SetupRuntimeOptions(&dart_options);
866 if (Dart_IsError(options_result)) {
867 return DartErrorExit(options_result);
868 }
869 // Lookup the library of the root script. 833 // Lookup the library of the root script.
870 Dart_Handle library = Dart_RootLibrary(); 834 Dart_Handle library = Dart_RootLibrary();
871 if (Dart_IsNull(library)) { 835 if (Dart_IsNull(library)) {
872 return ErrorExit(kErrorExitCode, 836 return ErrorExit(kErrorExitCode,
873 "Unable to find root library for '%s'\n", 837 "Unable to find root library for '%s'\n",
874 script_name); 838 script_name);
875 } 839 }
876 // Set debug breakpoint if specified on the command line. 840 // Set debug breakpoint if specified on the command line.
877 if (breakpoint_at != NULL) { 841 if (breakpoint_at != NULL) {
878 result = SetBreakpoint(breakpoint_at, library); 842 result = SetBreakpoint(breakpoint_at, library);
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
944 908
945 return Process::GlobalExitCode(); 909 return Process::GlobalExitCode();
946 } 910 }
947 911
948 } // namespace bin 912 } // namespace bin
949 } // namespace dart 913 } // namespace dart
950 914
951 int main(int argc, char** argv) { 915 int main(int argc, char** argv) {
952 return dart::bin::main(argc, argv); 916 return dart::bin::main(argc, argv);
953 } 917 }
OLDNEW
« no previous file with comments | « no previous file | sdk/lib/io/io.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698