Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(103)

Unified Diff: lib/compiler/implementation/lib/coreimpl_patch.dart

Issue 10911201: Reapply changes to Expando patching. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Move code around a bit. Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: lib/compiler/implementation/lib/coreimpl_patch.dart
diff --git a/lib/compiler/implementation/lib/coreimpl_patch.dart b/lib/compiler/implementation/lib/coreimpl_patch.dart
index 8953c709874b6537e9590ebf314a7792328226c1..b274c6ed4235e79301f2c95424764beb465d3df0 100644
--- a/lib/compiler/implementation/lib/coreimpl_patch.dart
+++ b/lib/compiler/implementation/lib/coreimpl_patch.dart
@@ -276,36 +276,3 @@ class _AllMatchesIterator implements Iterator<Match> {
}
}
}
-
-// Patch for Expando implementation.
-// TODO(ager): Split out into expando_patch.dart and allow #source in
-// patch files?
-patch class ExpandoImplementation<T> {
-
- patch T operator[](Object object) {
- var values = Primitives.getProperty(object, _EXPANDO_PROPERTY_NAME);
- return (values === null) ? null : Primitives.getProperty(values, _getKey());
- }
-
- patch void operator[]=(Object object, T value) {
- var values = Primitives.getProperty(object, _EXPANDO_PROPERTY_NAME);
- if (values === null) {
- values = new Object();
- Primitives.setProperty(object, _EXPANDO_PROPERTY_NAME, values);
- }
- Primitives.setProperty(values, _getKey(), value);
- }
-
- String _getKey() {
- String key = Primitives.getProperty(this, _KEY_PROPERTY_NAME);
- if (key === null) {
- key = "expando\$key\$${_keyCount++}";
- Primitives.setProperty(this, _KEY_PROPERTY_NAME, key);
- }
- return key;
- }
-
- static const String _KEY_PROPERTY_NAME = 'expando\$key';
- static const String _EXPANDO_PROPERTY_NAME = 'expando\$values';
- static int _keyCount = 0;
-}

Powered by Google App Engine
This is Rietveld 408576698