Index: runtime/lib/mirrors.cc |
=================================================================== |
--- runtime/lib/mirrors.cc (revision 14314) |
+++ runtime/lib/mirrors.cc (working copy) |
@@ -14,6 +14,11 @@ |
namespace dart { |
+inline Dart_Handle NewString(const char* str) { |
+ return Dart_NewStringFromCString(str); |
+} |
+ |
+ |
DEFINE_NATIVE_ENTRY(Mirrors_isLocalPort, 1) { |
GET_NATIVE_ARGUMENT(Instance, port, arguments->At(0)); |
@@ -34,14 +39,14 @@ |
// TODO(turnidge): Add Map support to the dart embedding api instead |
// of implementing it here. |
static Dart_Handle CoreLib() { |
- Dart_Handle core_lib_name = Dart_NewString("dart:core"); |
+ Dart_Handle core_lib_name = NewString("dart:core"); |
return Dart_LookupLibrary(core_lib_name); |
} |
static Dart_Handle MapNew() { |
// TODO(turnidge): Switch to an order-preserving map type. |
- Dart_Handle cls = Dart_GetClass(CoreLib(), Dart_NewString("Map")); |
+ Dart_Handle cls = Dart_GetClass(CoreLib(), NewString("Map")); |
if (Dart_IsError(cls)) { |
return cls; |
} |
@@ -51,18 +56,18 @@ |
static Dart_Handle MapAdd(Dart_Handle map, Dart_Handle key, Dart_Handle value) { |
Dart_Handle args[] = { key, value }; |
- return Dart_Invoke(map, Dart_NewString("[]="), ARRAY_SIZE(args), args); |
+ return Dart_Invoke(map, NewString("[]="), ARRAY_SIZE(args), args); |
} |
static Dart_Handle MirrorLib() { |
- Dart_Handle mirror_lib_name = Dart_NewString("dart:mirrors"); |
+ Dart_Handle mirror_lib_name = NewString("dart:mirrors"); |
return Dart_LookupLibrary(mirror_lib_name); |
} |
static Dart_Handle IsMirror(Dart_Handle object, bool* is_mirror) { |
- Dart_Handle cls_name = Dart_NewString("Mirror"); |
+ Dart_Handle cls_name = NewString("Mirror"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
@@ -92,7 +97,7 @@ |
static Dart_Handle CreateVMReference(Dart_Handle handle) { |
// Create the VMReference object. |
- Dart_Handle cls_name = Dart_NewString("VMReference"); |
+ Dart_Handle cls_name = NewString("VMReference"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
@@ -148,7 +153,7 @@ |
static Dart_Handle UnwrapMirror(Dart_Handle mirror) { |
- Dart_Handle field_name = Dart_NewString("_reference"); |
+ Dart_Handle field_name = NewString("_reference"); |
Dart_Handle vm_ref = Dart_GetField(mirror, field_name); |
if (Dart_IsError(vm_ref)) { |
return vm_ref; |
@@ -213,7 +218,7 @@ |
return result; |
} |
- Dart_Handle param_cls_name = Dart_NewString("_LocalParameterMirrorImpl"); |
+ Dart_Handle param_cls_name = NewString("_LocalParameterMirrorImpl"); |
Dart_Handle param_cls = Dart_GetClass(MirrorLib(), param_cls_name); |
if (Dart_IsError(param_cls)) { |
return param_cls; |
@@ -248,7 +253,7 @@ |
} |
if (Dart_IsLibrary(target)) { |
- Dart_Handle cls_name = Dart_NewString("_LazyLibraryMirror"); |
+ Dart_Handle cls_name = NewString("_LazyLibraryMirror"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
Dart_Handle args[] = { Dart_LibraryName(target) }; |
return Dart_New(cls, Dart_Null(), ARRAY_SIZE(args), args); |
@@ -256,7 +261,7 @@ |
if (Dart_IsClass(target) || Dart_IsInterface(target)) { |
if (Dart_ClassIsFunctionType(target)) { |
- Dart_Handle cls_name = Dart_NewString("_LazyFunctionTypeMirror"); |
+ Dart_Handle cls_name = NewString("_LazyFunctionTypeMirror"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
Dart_Handle sig = Dart_ClassGetFunctionTypeSignature(target); |
@@ -271,7 +276,7 @@ |
}; |
return Dart_New(cls, Dart_Null(), ARRAY_SIZE(args), args); |
} else { |
- Dart_Handle cls_name = Dart_NewString("_LazyTypeMirror"); |
+ Dart_Handle cls_name = NewString("_LazyTypeMirror"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
Dart_Handle lib = Dart_ClassGetLibrary(target); |
Dart_Handle lib_name; |
@@ -290,7 +295,7 @@ |
Dart_Handle owner = Dart_TypeVariableOwner(target); |
Dart_Handle owner_mirror = CreateLazyMirror(owner); |
- Dart_Handle cls_name = Dart_NewString("_LazyTypeVariableMirror"); |
+ Dart_Handle cls_name = NewString("_LazyTypeVariableMirror"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
Dart_Handle args[] = { var_name, owner_mirror }; |
@@ -336,7 +341,7 @@ |
Dart_Handle type_var_name, |
Dart_Handle owner_mirror) { |
ASSERT(Dart_IsTypeVariable(type_var)); |
- Dart_Handle cls_name = Dart_NewString("_LocalTypeVariableMirrorImpl"); |
+ Dart_Handle cls_name = NewString("_LocalTypeVariableMirrorImpl"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
@@ -400,7 +405,7 @@ |
Dart_Handle cls_name, |
Dart_Handle owner, |
Dart_Handle owner_mirror) { |
- Dart_Handle mirror_cls_name = Dart_NewString("_LocalTypedefMirrorImpl"); |
+ Dart_Handle mirror_cls_name = NewString("_LocalTypedefMirrorImpl"); |
Dart_Handle mirror_cls = Dart_GetClass(MirrorLib(), mirror_cls_name); |
if (Dart_IsError(mirror_cls)) { |
return mirror_cls; |
@@ -438,7 +443,7 @@ |
return CreateTypedefMirror(intf, intf_name, lib, lib_mirror); |
} |
- Dart_Handle cls_name = Dart_NewString("_LocalClassMirrorImpl"); |
+ Dart_Handle cls_name = NewString("_LocalClassMirrorImpl"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
@@ -447,7 +452,7 @@ |
// TODO(turnidge): Why am I getting Null when I expect Object? |
Dart_Handle super_class = Dart_GetSuperclass(intf); |
if (Dart_IsNull(super_class)) { |
- super_class = Dart_GetClass(CoreLib(), Dart_NewString("Object")); |
+ super_class = Dart_GetClass(CoreLib(), NewString("Object")); |
} |
Dart_Handle default_class = Dart_ClassGetDefault(intf); |
@@ -489,7 +494,7 @@ |
Dart_Handle func_name, |
Dart_Handle owner_mirror) { |
ASSERT(Dart_IsFunction(func)); |
- Dart_Handle mirror_cls_name = Dart_NewString("_LocalMethodMirrorImpl"); |
+ Dart_Handle mirror_cls_name = NewString("_LocalMethodMirrorImpl"); |
Dart_Handle mirror_cls = Dart_GetClass(MirrorLib(), mirror_cls_name); |
if (Dart_IsError(mirror_cls)) { |
return mirror_cls; |
@@ -562,7 +567,7 @@ |
Dart_Handle var_name, |
Dart_Handle lib_mirror) { |
ASSERT(Dart_IsVariable(var)); |
- Dart_Handle cls_name = Dart_NewString("_LocalVariableMirrorImpl"); |
+ Dart_Handle cls_name = NewString("_LocalVariableMirrorImpl"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
@@ -795,7 +800,7 @@ |
static Dart_Handle CreateLibraryMirror(Dart_Handle lib) { |
- Dart_Handle cls_name = Dart_NewString("_LocalLibraryMirrorImpl"); |
+ Dart_Handle cls_name = NewString("_LocalLibraryMirrorImpl"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
@@ -855,7 +860,7 @@ |
static Dart_Handle CreateIsolateMirror() { |
- Dart_Handle cls_name = Dart_NewString("_LocalIsolateMirrorImpl"); |
+ Dart_Handle cls_name = NewString("_LocalIsolateMirrorImpl"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
@@ -869,7 +874,7 @@ |
static Dart_Handle CreateMirrorSystem() { |
- Dart_Handle cls_name = Dart_NewString("_LocalMirrorSystemImpl"); |
+ Dart_Handle cls_name = NewString("_LocalMirrorSystemImpl"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
@@ -894,14 +899,14 @@ |
static Dart_Handle CreateNullMirror() { |
- Dart_Handle cls_name = Dart_NewString("_LocalInstanceMirrorImpl"); |
+ Dart_Handle cls_name = NewString("_LocalInstanceMirrorImpl"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
} |
// TODO(turnidge): This is wrong. The Null class is distinct from object. |
- Dart_Handle object_class = Dart_GetClass(CoreLib(), Dart_NewString("Object")); |
+ Dart_Handle object_class = Dart_GetClass(CoreLib(), NewString("Object")); |
Dart_Handle args[] = { |
CreateVMReference(Dart_Null()), |
@@ -925,7 +930,7 @@ |
} |
if (Dart_IsClosure(instance)) { |
- Dart_Handle cls_name = Dart_NewString("_LocalClosureMirrorImpl"); |
+ Dart_Handle cls_name = NewString("_LocalClosureMirrorImpl"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
@@ -938,7 +943,7 @@ |
} |
// TODO(turnidge): Why not use the real function name here? |
- Dart_Handle func_name = Dart_NewString("call"); |
+ Dart_Handle func_name = NewString("call"); |
Dart_Handle func_owner = Dart_FunctionOwner(func); |
if (Dart_IsError(func_owner)) { |
return func_owner; |
@@ -960,7 +965,7 @@ |
return Dart_New(cls, Dart_Null(), ARRAY_SIZE(args), args); |
} else { |
- Dart_Handle cls_name = Dart_NewString("_LocalInstanceMirrorImpl"); |
+ Dart_Handle cls_name = NewString("_LocalInstanceMirrorImpl"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
if (Dart_IsError(cls)) { |
return cls; |
@@ -995,7 +1000,7 @@ |
if (Dart_IsError(stack)) { |
return stack; |
} |
- Dart_Handle cls_name = Dart_NewString("MirroredUncaughtExceptionError"); |
+ Dart_Handle cls_name = NewString("MirroredUncaughtExceptionError"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
Dart_Handle args[] = { |
CreateInstanceMirror(exc), |
@@ -1007,9 +1012,9 @@ |
return Dart_NewUnhandledExceptionError(mirrored_exc); |
} else if (Dart_IsApiError(error) || |
Dart_IsCompilationError(error)) { |
- Dart_Handle cls_name = Dart_NewString("MirroredCompilationError"); |
+ Dart_Handle cls_name = NewString("MirroredCompilationError"); |
Dart_Handle cls = Dart_GetClass(MirrorLib(), cls_name); |
- Dart_Handle args[] = { Dart_NewString(Dart_GetError(error)) }; |
+ Dart_Handle args[] = { NewString(Dart_GetError(error)) }; |
Dart_Handle mirrored_exc = |
Dart_New(cls, Dart_Null(), ARRAY_SIZE(args), args); |
return Dart_NewUnhandledExceptionError(mirrored_exc); |