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

Unified Diff: runtime/vm/dart_api_impl.cc

Issue 2558673002: Add Kernel Isolate (Closed)
Patch Set: wip Created 4 years 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 side-by-side diff with in-line comments
Download patch
Index: runtime/vm/dart_api_impl.cc
diff --git a/runtime/vm/dart_api_impl.cc b/runtime/vm/dart_api_impl.cc
index 2e739e17e744e5c3cd356dda183cf4ab35d8b6fc..c5abb5ae42dd0318bb2a0e5fbbaa18abc30dc002 100644
--- a/runtime/vm/dart_api_impl.cc
+++ b/runtime/vm/dart_api_impl.cc
@@ -25,6 +25,7 @@
#include "vm/growable_array.h"
#include "vm/lockers.h"
#include "vm/isolate_reload.h"
+#include "vm/kernel_isolate.h"
#include "vm/message.h"
#include "vm/message_handler.h"
#include "vm/native_entry.h"
@@ -5977,6 +5978,44 @@ DART_EXPORT Dart_Handle Dart_SetPeer(Dart_Handle object, void* peer) {
}
+// --- Dart Front-End (Kernel) support ---
+
+DART_EXPORT bool Dart_IsKernelIsolate(Dart_Isolate isolate) {
+#ifdef DART_PRECOMPILED_RUNTIME
+ return false;
+#else
+ Isolate* iso = reinterpret_cast<Isolate*>(isolate);
+ return KernelIsolate::IsKernelIsolate(iso);
+#endif
+}
+
+
+DART_EXPORT bool Dart_KernelIsolateIsRunning() {
+#ifdef DART_PRECOMPILED_RUNTIME
+ return false;
+#else
+ return KernelIsolate::IsRunning();
+#endif
+}
+
+
+DART_EXPORT Dart_Port Dart_ServiceWaitForKernelPort() {
+#ifdef DART_PRECOMPILED_RUNTIME
+ return ILLEGAL_PORT;
+#else
+ return KernelIsolate::WaitForKernelPort();
+#endif
+}
+
+DART_EXPORT Dart_Port Dart_KernelPort() {
+#ifdef DART_PRECOMPILED_RUNTIME
+ return false;
+#else
+ return KernelIsolate::KernelPort();
+#endif
+}
+
+
// --- Service support ---
DART_EXPORT bool Dart_IsServiceIsolate(Dart_Isolate isolate) {

Powered by Google App Engine
This is Rietveld 408576698