Index: dart/runtime/lib/invocation_mirror_patch.dart |
diff --git a/dart/runtime/lib/invocation_mirror_patch.dart b/dart/runtime/lib/invocation_mirror_patch.dart |
index 0b438c7562b8cc7afbe22489ba66a78fe4cff6a2..0e2ebae71dca4ccb1166dc04cf6d18186606186c 100644 |
--- a/dart/runtime/lib/invocation_mirror_patch.dart |
+++ b/dart/runtime/lib/invocation_mirror_patch.dart |
@@ -29,25 +29,28 @@ class _InvocationMirror implements Invocation { |
final List _arguments; |
// External representation of the invocation mirror; populated on demand. |
- String _memberName; |
+ Symbol _memberName; |
int _type; |
List _positionalArguments; |
- Map<String, dynamic> _namedArguments; |
+ Map<Symbol, dynamic> _namedArguments; |
void _setMemberNameAndType() { |
if (_functionName.startsWith("get:")) { |
_type = _GETTER; |
- _memberName = _functionName.substring(4); |
+ _memberName = |
+ new _collection_dev.Symbol.unvalidated(_functionName.substring(4)); |
} else if (_functionName.startsWith("set:")) { |
_type = _SETTER; |
- _memberName = _functionName.substring(4) + "="; |
+ _memberName = |
+ new _collection_dev.Symbol.unvalidated( |
+ _functionName.substring(4) + "="); |
} else { |
_type = _METHOD; |
- _memberName = _functionName; |
+ _memberName = new _collection_dev.Symbol.unvalidated(_functionName); |
} |
} |
- String get memberName { |
+ Symbol get memberName { |
if (_memberName == null) { |
_setMemberNameAndType(); |
} |
@@ -63,16 +66,17 @@ class _InvocationMirror implements Invocation { |
return _positionalArguments; |
} |
- Map<String, dynamic> get namedArguments { |
+ Map<Symbol, dynamic> get namedArguments { |
if (_namedArguments == null) { |
- _namedArguments = new Map<String, dynamic>(); |
+ _namedArguments = new Map<Symbol, dynamic>(); |
int numArguments = _argumentsDescriptor[0] - 1; // Exclude receiver. |
int numPositionalArguments = _argumentsDescriptor[1] - 1; |
int numNamedArguments = numArguments - numPositionalArguments; |
for (int i = 0; i < numNamedArguments; i++) { |
String arg_name = _argumentsDescriptor[2 + 2*i]; |
var arg_value = _arguments[_argumentsDescriptor[3 + 2*i]]; |
- _namedArguments[arg_name] = arg_value; |
+ _namedArguments[new _collection_dev.Symbol.unvalidated(arg_name)] = |
+ arg_value; |
} |
} |
return _namedArguments; |