| OLD | NEW |
| 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 "include/dart_api.h" | 5 #include "include/dart_api.h" |
| 6 #include "include/dart_mirrors_api.h" | 6 #include "include/dart_mirrors_api.h" |
| 7 #include "include/dart_native_api.h" | 7 #include "include/dart_native_api.h" |
| 8 | 8 |
| 9 #include "lib/stacktrace.h" | 9 #include "lib/stacktrace.h" |
| 10 #include "platform/assert.h" | 10 #include "platform/assert.h" |
| (...skipping 5770 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5781 NoSafepointScope no_safepoint; | 5781 NoSafepointScope no_safepoint; |
| 5782 RawObject* raw_obj = obj.raw(); | 5782 RawObject* raw_obj = obj.raw(); |
| 5783 thread->isolate()->heap()->SetPeer(raw_obj, peer); | 5783 thread->isolate()->heap()->SetPeer(raw_obj, peer); |
| 5784 } | 5784 } |
| 5785 return Api::Success(); | 5785 return Api::Success(); |
| 5786 } | 5786 } |
| 5787 | 5787 |
| 5788 // --- Dart Front-End (Kernel) support --- | 5788 // --- Dart Front-End (Kernel) support --- |
| 5789 | 5789 |
| 5790 DART_EXPORT bool Dart_IsKernelIsolate(Dart_Isolate isolate) { | 5790 DART_EXPORT bool Dart_IsKernelIsolate(Dart_Isolate isolate) { |
| 5791 #ifdef DART_PRECOMPILED_RUNTIME | 5791 #if defined(DART_PRECOMPILED_RUNTIME) |
| 5792 return false; | 5792 return false; |
| 5793 #else | 5793 #else |
| 5794 Isolate* iso = reinterpret_cast<Isolate*>(isolate); | 5794 Isolate* iso = reinterpret_cast<Isolate*>(isolate); |
| 5795 return KernelIsolate::IsKernelIsolate(iso); | 5795 return KernelIsolate::IsKernelIsolate(iso); |
| 5796 #endif | 5796 #endif |
| 5797 } | 5797 } |
| 5798 | 5798 |
| 5799 DART_EXPORT bool Dart_KernelIsolateIsRunning() { | 5799 DART_EXPORT bool Dart_KernelIsolateIsRunning() { |
| 5800 #ifdef DART_PRECOMPILED_RUNTIME | 5800 #if defined(DART_PRECOMPILED_RUNTIME) |
| 5801 return false; | 5801 return false; |
| 5802 #else | 5802 #else |
| 5803 return KernelIsolate::IsRunning(); | 5803 return KernelIsolate::IsRunning(); |
| 5804 #endif | 5804 #endif |
| 5805 } | 5805 } |
| 5806 | 5806 |
| 5807 DART_EXPORT Dart_Port Dart_KernelPort() { | 5807 DART_EXPORT Dart_Port Dart_KernelPort() { |
| 5808 #ifdef DART_PRECOMPILED_RUNTIME | 5808 #if defined(DART_PRECOMPILED_RUNTIME) |
| 5809 return false; | 5809 return false; |
| 5810 #else | 5810 #else |
| 5811 return KernelIsolate::KernelPort(); | 5811 return KernelIsolate::KernelPort(); |
| 5812 #endif | 5812 #endif |
| 5813 } | 5813 } |
| 5814 | 5814 |
| 5815 DART_EXPORT Dart_KernelCompilationResult | 5815 DART_EXPORT Dart_KernelCompilationResult |
| 5816 Dart_CompileToKernel(const char* script_uri, const char* platform_kernel) { | 5816 Dart_CompileToKernel(const char* script_uri, const char* platform_kernel) { |
| 5817 #ifdef DART_PRECOMPILED_RUNTIME | 5817 #if defined(DART_PRECOMPILED_RUNTIME) |
| 5818 Dart_KernelCompilationResult result; | 5818 Dart_KernelCompilationResult result; |
| 5819 result.status = Dart_KernelCompilationStatus_Unknown; | 5819 result.status = Dart_KernelCompilationStatus_Unknown; |
| 5820 result.error = strdup("Dart_CompileToKernel is unsupported."); | 5820 result.error = strdup("Dart_CompileToKernel is unsupported."); |
| 5821 return result; | 5821 return result; |
| 5822 #else | 5822 #else |
| 5823 return KernelIsolate::CompileToKernel(script_uri, platform_kernel); | 5823 return KernelIsolate::CompileToKernel(script_uri, platform_kernel); |
| 5824 #endif | 5824 #endif |
| 5825 } | 5825 } |
| 5826 | 5826 |
| 5827 DART_EXPORT Dart_KernelCompilationResult | 5827 DART_EXPORT Dart_KernelCompilationResult |
| 5828 Dart_CompileSourcesToKernel(const char* script_uri, | 5828 Dart_CompileSourcesToKernel(const char* script_uri, |
| 5829 const char* platform_kernel, | 5829 const char* platform_kernel, |
| 5830 int source_files_count, | 5830 int source_files_count, |
| 5831 Dart_SourceFile sources[], | 5831 Dart_SourceFile sources[], |
| 5832 bool incremental_compile) { | 5832 bool incremental_compile) { |
| 5833 #ifdef DART_PRECOMPILED_RUNTIME | 5833 #if defined(DART_PRECOMPILED_RUNTIME) |
| 5834 Dart_KernelCompilationResult result; | 5834 Dart_KernelCompilationResult result; |
| 5835 result.status = Dart_KernelCompilationStatus_Unknown; | 5835 result.status = Dart_KernelCompilationStatus_Unknown; |
| 5836 result.error = strdup("Dart_CompileSourcesToKernel is unsupported."); | 5836 result.error = strdup("Dart_CompileSourcesToKernel is unsupported."); |
| 5837 return result; | 5837 return result; |
| 5838 #else | 5838 #else |
| 5839 return KernelIsolate::CompileToKernel(script_uri, platform_kernel, | 5839 return KernelIsolate::CompileToKernel(script_uri, platform_kernel, |
| 5840 source_files_count, sources, | 5840 source_files_count, sources, |
| 5841 incremental_compile); | 5841 incremental_compile); |
| 5842 #endif | 5842 #endif |
| 5843 } | 5843 } |
| (...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6008 } | 6008 } |
| 6009 Service::SendEmbedderEvent(I, stream_id, event_kind, bytes, bytes_length); | 6009 Service::SendEmbedderEvent(I, stream_id, event_kind, bytes, bytes_length); |
| 6010 return Api::Success(); | 6010 return Api::Success(); |
| 6011 } | 6011 } |
| 6012 | 6012 |
| 6013 DART_EXPORT Dart_Handle | 6013 DART_EXPORT Dart_Handle |
| 6014 Dart_SetFileModifiedCallback(Dart_FileModifiedCallback file_modified_callback) { | 6014 Dart_SetFileModifiedCallback(Dart_FileModifiedCallback file_modified_callback) { |
| 6015 if (!FLAG_support_service) { | 6015 if (!FLAG_support_service) { |
| 6016 return Api::Success(); | 6016 return Api::Success(); |
| 6017 } | 6017 } |
| 6018 #if !defined(DART_PRECOMPILED_RUNTIME) |
| 6018 if (file_modified_callback != NULL) { | 6019 if (file_modified_callback != NULL) { |
| 6019 if (IsolateReloadContext::file_modified_callback() != NULL) { | 6020 if (IsolateReloadContext::file_modified_callback() != NULL) { |
| 6020 return Api::NewError( | 6021 return Api::NewError( |
| 6021 "%s permits only one callback to be registered, please " | 6022 "%s permits only one callback to be registered, please " |
| 6022 "remove the existing callback and then add this callback", | 6023 "remove the existing callback and then add this callback", |
| 6023 CURRENT_FUNC); | 6024 CURRENT_FUNC); |
| 6024 } | 6025 } |
| 6025 } else { | 6026 } else { |
| 6026 if (IsolateReloadContext::file_modified_callback() == NULL) { | 6027 if (IsolateReloadContext::file_modified_callback() == NULL) { |
| 6027 return Api::NewError( | 6028 return Api::NewError( |
| 6028 "%s expects 'file_modified_callback' to be set before it is cleared.", | 6029 "%s expects 'file_modified_callback' to be set before it is cleared.", |
| 6029 CURRENT_FUNC); | 6030 CURRENT_FUNC); |
| 6030 } | 6031 } |
| 6031 } | 6032 } |
| 6032 IsolateReloadContext::SetFileModifiedCallback(file_modified_callback); | 6033 IsolateReloadContext::SetFileModifiedCallback(file_modified_callback); |
| 6034 #endif // !defined(DART_PRECOMPILED_RUNTIME) |
| 6033 return Api::Success(); | 6035 return Api::Success(); |
| 6034 } | 6036 } |
| 6035 | 6037 |
| 6036 DART_EXPORT bool Dart_IsReloading() { | 6038 DART_EXPORT bool Dart_IsReloading() { |
| 6037 Thread* thread = Thread::Current(); | 6039 Thread* thread = Thread::Current(); |
| 6038 Isolate* isolate = thread->isolate(); | 6040 Isolate* isolate = thread->isolate(); |
| 6039 CHECK_ISOLATE(isolate); | 6041 CHECK_ISOLATE(isolate); |
| 6040 return isolate->IsReloading(); | 6042 return isolate->IsReloading(); |
| 6041 } | 6043 } |
| 6042 | 6044 |
| (...skipping 698 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6741 #endif | 6743 #endif |
| 6742 } | 6744 } |
| 6743 | 6745 |
| 6744 DART_EXPORT void Dart_DumpNativeStackTrace(void* context) { | 6746 DART_EXPORT void Dart_DumpNativeStackTrace(void* context) { |
| 6745 #ifndef PRODUCT | 6747 #ifndef PRODUCT |
| 6746 Profiler::DumpStackTrace(context); | 6748 Profiler::DumpStackTrace(context); |
| 6747 #endif | 6749 #endif |
| 6748 } | 6750 } |
| 6749 | 6751 |
| 6750 } // namespace dart | 6752 } // namespace dart |
| OLD | NEW |