Index: runtime/lib/isolate.cc |
diff --git a/runtime/lib/isolate.cc b/runtime/lib/isolate.cc |
index e9bc612f9a088c1ad6ee4748d9109d4951fc4f92..d9ea131e9423bd0790e036950f9b90737c5662e6 100644 |
--- a/runtime/lib/isolate.cc |
+++ b/runtime/lib/isolate.cc |
@@ -41,21 +41,18 @@ static void malloc_deallocator(uint8_t* ptr) { |
free(reinterpret_cast<void*>(ptr)); |
} |
- |
DEFINE_NATIVE_ENTRY(CapabilityImpl_factory, 1) { |
ASSERT(TypeArguments::CheckedHandle(arguments->NativeArgAt(0)).IsNull()); |
uint64_t id = isolate->random()->NextUInt64(); |
return Capability::New(id); |
} |
- |
DEFINE_NATIVE_ENTRY(CapabilityImpl_equals, 2) { |
GET_NON_NULL_NATIVE_ARGUMENT(Capability, recv, arguments->NativeArgAt(0)); |
GET_NON_NULL_NATIVE_ARGUMENT(Capability, other, arguments->NativeArgAt(1)); |
return (recv.Id() == other.Id()) ? Bool::True().raw() : Bool::False().raw(); |
} |
- |
DEFINE_NATIVE_ENTRY(CapabilityImpl_get_hashcode, 1) { |
GET_NON_NULL_NATIVE_ARGUMENT(Capability, cap, arguments->NativeArgAt(0)); |
int64_t id = cap.Id(); |
@@ -65,26 +62,22 @@ DEFINE_NATIVE_ENTRY(CapabilityImpl_get_hashcode, 1) { |
return Smi::New(hash); |
} |
- |
DEFINE_NATIVE_ENTRY(RawReceivePortImpl_factory, 1) { |
ASSERT(TypeArguments::CheckedHandle(arguments->NativeArgAt(0)).IsNull()); |
Dart_Port port_id = PortMap::CreatePort(isolate->message_handler()); |
return ReceivePort::New(port_id, false /* not control port */); |
} |
- |
DEFINE_NATIVE_ENTRY(RawReceivePortImpl_get_id, 1) { |
GET_NON_NULL_NATIVE_ARGUMENT(ReceivePort, port, arguments->NativeArgAt(0)); |
return Integer::NewFromUint64(port.Id()); |
} |
- |
DEFINE_NATIVE_ENTRY(RawReceivePortImpl_get_sendport, 1) { |
GET_NON_NULL_NATIVE_ARGUMENT(ReceivePort, port, arguments->NativeArgAt(0)); |
return port.send_port(); |
} |
- |
DEFINE_NATIVE_ENTRY(RawReceivePortImpl_closeInternal, 1) { |
GET_NON_NULL_NATIVE_ARGUMENT(ReceivePort, port, arguments->NativeArgAt(0)); |
Dart_Port id = port.Id(); |
@@ -92,13 +85,11 @@ DEFINE_NATIVE_ENTRY(RawReceivePortImpl_closeInternal, 1) { |
return Integer::NewFromUint64(id); |
} |
- |
DEFINE_NATIVE_ENTRY(SendPortImpl_get_id, 1) { |
GET_NON_NULL_NATIVE_ARGUMENT(SendPort, port, arguments->NativeArgAt(0)); |
return Integer::NewFromUint64(port.Id()); |
} |
- |
DEFINE_NATIVE_ENTRY(SendPortImpl_get_hashcode, 1) { |
GET_NON_NULL_NATIVE_ARGUMENT(SendPort, port, arguments->NativeArgAt(0)); |
int64_t id = port.Id(); |
@@ -108,7 +99,6 @@ DEFINE_NATIVE_ENTRY(SendPortImpl_get_hashcode, 1) { |
return Smi::New(hash); |
} |
- |
DEFINE_NATIVE_ENTRY(SendPortImpl_sendInternal_, 2) { |
GET_NON_NULL_NATIVE_ARGUMENT(SendPort, port, arguments->NativeArgAt(0)); |
// TODO(iposva): Allow for arbitrary messages to be sent. |
@@ -134,14 +124,12 @@ DEFINE_NATIVE_ENTRY(SendPortImpl_sendInternal_, 2) { |
return Object::null(); |
} |
- |
static void ThrowIsolateSpawnException(const String& message) { |
const Array& args = Array::Handle(Array::New(1)); |
args.SetAt(0, message); |
Exceptions::ThrowByType(Exceptions::kIsolateSpawn, args); |
} |
- |
class SpawnIsolateTask : public ThreadPool::Task { |
public: |
explicit SpawnIsolateTask(IsolateSpawnState* state) : state_(state) {} |
@@ -204,7 +192,6 @@ class SpawnIsolateTask : public ThreadPool::Task { |
DISALLOW_COPY_AND_ASSIGN(SpawnIsolateTask); |
}; |
- |
static const char* String2UTF8(const String& str) { |
intptr_t len = Utf8::Length(str); |
char* result = new char[len + 1]; |
@@ -214,7 +201,6 @@ static const char* String2UTF8(const String& str) { |
return result; |
} |
- |
DEFINE_NATIVE_ENTRY(Isolate_spawnFunction, 10) { |
GET_NON_NULL_NATIVE_ARGUMENT(SendPort, port, arguments->NativeArgAt(0)); |
GET_NON_NULL_NATIVE_ARGUMENT(String, script_uri, arguments->NativeArgAt(1)); |
@@ -293,7 +279,6 @@ DEFINE_NATIVE_ENTRY(Isolate_spawnFunction, 10) { |
return Object::null(); |
} |
- |
static const char* CanonicalizeUri(Thread* thread, |
const Library& library, |
const String& uri, |
@@ -331,7 +316,6 @@ static const char* CanonicalizeUri(Thread* thread, |
return result; |
} |
- |
DEFINE_NATIVE_ENTRY(Isolate_spawnUri, 12) { |
GET_NON_NULL_NATIVE_ARGUMENT(SendPort, port, arguments->NativeArgAt(0)); |
GET_NON_NULL_NATIVE_ARGUMENT(String, uri, arguments->NativeArgAt(1)); |
@@ -434,7 +418,6 @@ DEFINE_NATIVE_ENTRY(Isolate_spawnUri, 12) { |
return Object::null(); |
} |
- |
DEFINE_NATIVE_ENTRY(Isolate_getPortAndCapabilitiesOfCurrentIsolate, 0) { |
const Array& result = Array::Handle(Array::New(3)); |
result.SetAt(0, SendPort::Handle(SendPort::New(isolate->main_port()))); |
@@ -445,14 +428,12 @@ DEFINE_NATIVE_ENTRY(Isolate_getPortAndCapabilitiesOfCurrentIsolate, 0) { |
return result.raw(); |
} |
- |
DEFINE_NATIVE_ENTRY(Isolate_getCurrentRootUriStr, 0) { |
const Library& root_lib = |
Library::Handle(zone, isolate->object_store()->root_library()); |
return root_lib.url(); |
} |
- |
DEFINE_NATIVE_ENTRY(Isolate_sendOOB, 2) { |
GET_NON_NULL_NATIVE_ARGUMENT(SendPort, port, arguments->NativeArgAt(0)); |
GET_NON_NULL_NATIVE_ARGUMENT(Array, msg, arguments->NativeArgAt(1)); |