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

Side by Side Diff: runtime/vm/isolate.h

Issue 1553233002: Add package config support to dart:isolate (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Addressed review comments. Created 4 years, 11 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
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 #ifndef VM_ISOLATE_H_ 5 #ifndef VM_ISOLATE_H_
6 #define VM_ISOLATE_H_ 6 #define VM_ISOLATE_H_
7 7
8 #include "include/dart_api.h" 8 #include "include/dart_api.h"
9 #include "platform/assert.h" 9 #include "platform/assert.h"
10 #include "vm/atomic.h" 10 #include "vm/atomic.h"
(...skipping 897 matching lines...) Expand 10 before | Expand all | Expand 10 after
908 908
909 DISALLOW_COPY_AND_ASSIGN(StartIsolateScope); 909 DISALLOW_COPY_AND_ASSIGN(StartIsolateScope);
910 }; 910 };
911 911
912 912
913 class IsolateSpawnState { 913 class IsolateSpawnState {
914 public: 914 public:
915 IsolateSpawnState(Dart_Port parent_port, 915 IsolateSpawnState(Dart_Port parent_port,
916 Dart_Port origin_id, 916 Dart_Port origin_id,
917 void* init_data, 917 void* init_data,
918 const char* script_url,
918 const Function& func, 919 const Function& func,
919 const Instance& message, 920 const Instance& message,
920 Monitor* spawn_count_monitor, 921 Monitor* spawn_count_monitor,
921 intptr_t* spawn_count, 922 intptr_t* spawn_count,
923 const char* package_root,
924 const char* package_config,
922 bool paused, 925 bool paused,
923 bool errorsAreFatal, 926 bool errorsAreFatal,
924 Dart_Port onExit, 927 Dart_Port onExit,
925 Dart_Port onError); 928 Dart_Port onError);
926 IsolateSpawnState(Dart_Port parent_port, 929 IsolateSpawnState(Dart_Port parent_port,
927 void* init_data, 930 void* init_data,
928 const char* script_url, 931 const char* script_url,
929 const char* package_root, 932 const char* package_root,
930 const char** package_map, 933 const char* package_config,
931 const Instance& args, 934 const Instance& args,
932 const Instance& message, 935 const Instance& message,
933 Monitor* spawn_count_monitor, 936 Monitor* spawn_count_monitor,
934 intptr_t* spawn_count, 937 intptr_t* spawn_count,
935 bool paused, 938 bool paused,
936 bool errorsAreFatal, 939 bool errorsAreFatal,
937 Dart_Port onExit, 940 Dart_Port onExit,
938 Dart_Port onError); 941 Dart_Port onError);
939 ~IsolateSpawnState(); 942 ~IsolateSpawnState();
940 943
941 Isolate* isolate() const { return isolate_; } 944 Isolate* isolate() const { return isolate_; }
942 void set_isolate(Isolate* value) { isolate_ = value; } 945 void set_isolate(Isolate* value) { isolate_ = value; }
943 946
944 Dart_Port parent_port() const { return parent_port_; } 947 Dart_Port parent_port() const { return parent_port_; }
945 Dart_Port origin_id() const { return origin_id_; } 948 Dart_Port origin_id() const { return origin_id_; }
946 void* init_data() const { return init_data_; } 949 void* init_data() const { return init_data_; }
947 Dart_Port on_exit_port() const { return on_exit_port_; } 950 Dart_Port on_exit_port() const { return on_exit_port_; }
948 Dart_Port on_error_port() const { return on_error_port_; } 951 Dart_Port on_error_port() const { return on_error_port_; }
949 const char* script_url() const { return script_url_; } 952 const char* script_url() const { return script_url_; }
950 const char* package_root() const { return package_root_; } 953 const char* package_root() const { return package_root_; }
951 const char** package_map() const { return package_map_; } 954 const char* package_config() const { return package_config_; }
952 const char* library_url() const { return library_url_; } 955 const char* library_url() const { return library_url_; }
953 const char* class_name() const { return class_name_; } 956 const char* class_name() const { return class_name_; }
954 const char* function_name() const { return function_name_; } 957 const char* function_name() const { return function_name_; }
955 bool is_spawn_uri() const { return library_url_ == NULL; } 958 bool is_spawn_uri() const { return library_url_ == NULL; }
956 bool paused() const { return paused_; } 959 bool paused() const { return paused_; }
957 bool errors_are_fatal() const { return errors_are_fatal_; } 960 bool errors_are_fatal() const { return errors_are_fatal_; }
958 Isolate::Flags* isolate_flags() { return &isolate_flags_; } 961 Isolate::Flags* isolate_flags() { return &isolate_flags_; }
959 962
960 RawObject* ResolveFunction(); 963 RawObject* ResolveFunction();
961 RawInstance* BuildArgs(Thread* thread); 964 RawInstance* BuildArgs(Thread* thread);
962 RawInstance* BuildMessage(Thread* thread); 965 RawInstance* BuildMessage(Thread* thread);
963 966
964 void DecrementSpawnCount(); 967 void DecrementSpawnCount();
965 968
966 private: 969 private:
967 Isolate* isolate_; 970 Isolate* isolate_;
968 Dart_Port parent_port_; 971 Dart_Port parent_port_;
969 Dart_Port origin_id_; 972 Dart_Port origin_id_;
970 void* init_data_; 973 void* init_data_;
971 Dart_Port on_exit_port_; 974 Dart_Port on_exit_port_;
972 Dart_Port on_error_port_; 975 Dart_Port on_error_port_;
973 const char* script_url_; 976 const char* script_url_;
974 const char* package_root_; 977 const char* package_root_;
975 const char** package_map_; 978 const char* package_config_;
976 const char* library_url_; 979 const char* library_url_;
977 const char* class_name_; 980 const char* class_name_;
978 const char* function_name_; 981 const char* function_name_;
979 uint8_t* serialized_args_; 982 uint8_t* serialized_args_;
980 intptr_t serialized_args_len_; 983 intptr_t serialized_args_len_;
981 uint8_t* serialized_message_; 984 uint8_t* serialized_message_;
982 intptr_t serialized_message_len_; 985 intptr_t serialized_message_len_;
983 986
984 // This counter tracks the number of outstanding calls to spawn by the parent 987 // This counter tracks the number of outstanding calls to spawn by the parent
985 // isolate. 988 // isolate.
986 Monitor* spawn_count_monitor_; 989 Monitor* spawn_count_monitor_;
987 intptr_t* spawn_count_; 990 intptr_t* spawn_count_;
988 991
989 Isolate::Flags isolate_flags_; 992 Isolate::Flags isolate_flags_;
990 bool paused_; 993 bool paused_;
991 bool errors_are_fatal_; 994 bool errors_are_fatal_;
992 }; 995 };
993 996
994 } // namespace dart 997 } // namespace dart
995 998
996 #endif // VM_ISOLATE_H_ 999 #endif // VM_ISOLATE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698