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

Side by Side Diff: pkg/compiler/lib/src/elements/elements.dart

Issue 1638863002: Revert "Optimize subclass/subtype queries" (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 4 years, 11 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 unified diff | Download patch
« no previous file with comments | « no previous file | pkg/compiler/lib/src/elements/modelx.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library elements; 5 library elements;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../common/resolution.dart' show 8 import '../common/resolution.dart' show
9 Resolution; 9 Resolution;
10 import '../compiler.dart' show 10 import '../compiler.dart' show
11 Compiler; 11 Compiler;
12 import '../constants/constructors.dart'; 12 import '../constants/constructors.dart';
13 import '../constants/expressions.dart'; 13 import '../constants/expressions.dart';
14 import '../core_types.dart' show
15 CoreClasses;
16 import '../dart_types.dart'; 14 import '../dart_types.dart';
17 import '../resolution/scope.dart' show 15 import '../resolution/scope.dart' show
18 Scope; 16 Scope;
19 import '../resolution/tree_elements.dart' show 17 import '../resolution/tree_elements.dart' show
20 TreeElements; 18 TreeElements;
21 import '../ordered_typeset.dart' show OrderedTypeSet; 19 import '../ordered_typeset.dart' show OrderedTypeSet;
22 import '../script.dart'; 20 import '../script.dart';
23 import '../tokens/token.dart' show 21 import '../tokens/token.dart' show
24 Token, 22 Token,
25 isUserDefinableOperator, 23 isUserDefinableOperator,
(...skipping 1399 matching lines...) Expand 10 before | Expand all | Expand 10 after
1425 bool get isUnnamedMixinApplication; 1423 bool get isUnnamedMixinApplication;
1426 1424
1427 bool get hasBackendMembers; 1425 bool get hasBackendMembers;
1428 bool get hasLocalScopeMembers; 1426 bool get hasLocalScopeMembers;
1429 1427
1430 /// Returns `true` if this class is `Object` from dart:core. 1428 /// Returns `true` if this class is `Object` from dart:core.
1431 bool get isObject; 1429 bool get isObject;
1432 1430
1433 /// Returns `true` if this class implements [Function] either by directly 1431 /// Returns `true` if this class implements [Function] either by directly
1434 /// implementing the interface or by providing a [call] method. 1432 /// implementing the interface or by providing a [call] method.
1435 bool implementsFunction(CoreClasses coreClasses); 1433 bool implementsFunction(Compiler compiler);
1436 1434
1437 /// Returns `true` if this class extends [cls] directly or indirectly. 1435 /// Returns `true` if this class extends [cls] directly or indirectly.
1438 /// 1436 ///
1439 /// This method is not to be used for checking type hierarchy and assignments, 1437 /// This method is not to be used for checking type hierarchy and assignments,
1440 /// because it does not take parameterized types into account. 1438 /// because it does not take parameterized types into account.
1441 bool isSubclassOf(ClassElement cls); 1439 bool isSubclassOf(ClassElement cls);
1442 1440
1443 /// Returns `true` if this class explicitly implements [intrface]. 1441 /// Returns `true` if this class explicitly implements [intrface].
1444 /// 1442 ///
1445 /// Note that, if [intrface] is the `Function` class, this method returns 1443 /// Note that, if [intrface] is the `Function` class, this method returns
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after
1719 bool get isDeclaredByField; 1717 bool get isDeclaredByField;
1720 1718
1721 /// Returns `true` if this member is abstract. 1719 /// Returns `true` if this member is abstract.
1722 bool get isAbstract; 1720 bool get isAbstract;
1723 1721
1724 /// If abstract, [implementation] points to the overridden concrete member, 1722 /// If abstract, [implementation] points to the overridden concrete member,
1725 /// if any. Otherwise [implementation] points to the member itself. 1723 /// if any. Otherwise [implementation] points to the member itself.
1726 Member get implementation; 1724 Member get implementation;
1727 } 1725 }
1728 1726
OLDNEW
« no previous file with comments | « no previous file | pkg/compiler/lib/src/elements/modelx.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698