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

Unified Diff: sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart

Issue 236313012: Don't hide interceptors in mirrors. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Minor cleanups. Created 6 years, 8 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: sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart
diff --git a/sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart b/sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart
index c2cb16be184f734ce89383a9af869eff74fd08e8..6a447fb32304595fc21f327b1d905de8b38fa531 100644
--- a/sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart
+++ b/sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart
@@ -49,7 +49,6 @@ class TypeTestEmitter extends CodeEmitterHelper {
// Avoid emitting [:$isObject:] on all classes but [Object].
return;
}
- other = backend.getImplementationClass(other);
builder.addProperty(namer.operatorIs(other), js('true'));
}
@@ -232,7 +231,8 @@ class TypeTestEmitter extends CodeEmitterHelper {
Map<FunctionType, bool> getFunctionTypeChecksOn(DartType type) {
Map<FunctionType, bool> functionTypeMap = new Map<FunctionType, bool>();
for (FunctionType functionType in checkedFunctionTypes) {
- int maybeSubtype = compiler.types.computeSubtypeRelation(type, functionType);
+ int maybeSubtype =
+ compiler.types.computeSubtypeRelation(type, functionType);
if (maybeSubtype == Types.IS_SUBTYPE) {
functionTypeMap[functionType] = true;
} else if (maybeSubtype == Types.MAYBE_SUBTYPE) {
@@ -285,7 +285,7 @@ class TypeTestEmitter extends CodeEmitterHelper {
if (destination != outputUnit) continue;
// TODO(9556). The properties added to 'holder' should be generated
// directly as properties of the class object, not added later.
- String holder = namer.isolateAccess(backend.getImplementationClass(cls));
+ String holder = namer.isolateAccess(cls);
for (TypeCheck check in typeChecks[cls]) {
ClassElement cls = check.cls;
buffer.write('$holder.${namer.operatorIs(cls)}$_=${_}true$N');
@@ -313,7 +313,7 @@ class TypeTestEmitter extends CodeEmitterHelper {
Set<ClassElement> result = new Set<ClassElement>();
for (ClassElement cls in typeChecks) {
for (TypeCheck check in typeChecks[cls]) {
- result.add(backend.getImplementationClass(cls));
+ result.add(cls);
break;
}
}
@@ -344,9 +344,7 @@ class TypeTestEmitter extends CodeEmitterHelper {
rti.getRequiredArgumentClasses(backend).forEach((ClassElement c) {
// Types that we represent with JS native types (like int and String) do
// not need a class definition as we use the interceptor classes instead.
karlklose 2014/04/28 14:04:25 Update or remove comment. If you remove it, rewri
floitsch 2014/04/30 19:04:38 Done.
- if (!rti.isJsNative(c)) {
- addClassWithSuperclasses(c);
- }
+ addClassWithSuperclasses(c);
});
// 2. Add classes that are referenced by substitutions in object checks and

Powered by Google App Engine
This is Rietveld 408576698