Index: pkg/polymer/lib/src/loader.dart |
diff --git a/pkg/polymer/lib/src/loader.dart b/pkg/polymer/lib/src/loader.dart |
index 844b6264f645a52dc9003181a727d25b0d6876c5..1011b5a2b0d2c247f8d5574c31e3bfd0e3e0b2d5 100644 |
--- a/pkg/polymer/lib/src/loader.dart |
+++ b/pkg/polymer/lib/src/loader.dart |
@@ -90,7 +90,7 @@ void _loadLibrary(String uriString, [String srcUrl]) { |
for (var m in c.metadata) { |
var meta = m.reflectee; |
if (meta is CustomTag) { |
- Polymer.register(meta.tagName, _getReflectedTypeWorkaround(c)); |
+ Polymer.register(meta.tagName, getReflectedTypeWorkaround(c)); |
} |
} |
@@ -103,26 +103,6 @@ void _loadLibrary(String uriString, [String srcUrl]) { |
} |
} |
-// Horrible hack to work around: http://dartbug.com/12607 |
-Type _getReflectedTypeWorkaround(ClassMirror cls) { |
- // On Dart VM, just return reflectedType. |
- if (1.0 is! int) return cls.reflectedType; |
- |
- var mangledName = reflect(cls).getField(_mangledNameField).reflectee; |
- Type type = _jsHelper.invoke(#createRuntimeType, [mangledName]).reflectee; |
- return type; |
-} |
- |
-final LibraryMirror _jsHelper = |
- currentMirrorSystem().libraries[Uri.parse('dart:_js_helper')]; |
- |
-final Symbol _mangledNameField = () { |
- var jsClassMirrorMirror = reflect(reflectClass(ClassMirror)).type; |
- for (var name in jsClassMirrorMirror.variables.keys) { |
- if (MirrorSystem.getName(name) == '_mangledName') return name; |
- } |
-}(); |
- |
void _maybeInvoke(ObjectMirror obj, MethodMirror method) { |
var annotationFound = false; |
for (var meta in method.metadata) { |