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

Side by Side Diff: pkg/compiler/lib/src/kernel/element_map.dart

Issue 2884273002: Support mixins when loading from .dill (Closed)
Patch Set: Fix comment Created 3 years, 7 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
OLDNEW
1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2017, 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 import 'package:kernel/ast.dart' as ir; 5 import 'package:kernel/ast.dart' as ir;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../common/names.dart'; 8 import '../common/names.dart';
9 import '../constants/constructors.dart'; 9 import '../constants/constructors.dart';
10 import '../constants/expressions.dart'; 10 import '../constants/expressions.dart';
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 CallStructure getCallStructure(ir.Arguments arguments); 46 CallStructure getCallStructure(ir.Arguments arguments);
47 47
48 /// Returns the [Selector] corresponding to the invocation or getter/setter 48 /// Returns the [Selector] corresponding to the invocation or getter/setter
49 /// access of [node]. 49 /// access of [node].
50 Selector getSelector(ir.Expression node); 50 Selector getSelector(ir.Expression node);
51 51
52 /// Returns the [ConstructorEntity] corresponding to the generative or factory 52 /// Returns the [ConstructorEntity] corresponding to the generative or factory
53 /// constructor [node]. 53 /// constructor [node].
54 ConstructorEntity getConstructor(ir.Member node); 54 ConstructorEntity getConstructor(ir.Member node);
55 55
56 /// Returns the [ConstructorEntity] corresponding to a super initializer
57 /// in [constructor] targeting [target].
Siggi Cherem (dart-lang) 2017/05/17 16:50:32 nit: consider rephrasing this a bit and include be
Johnni Winther 2017/05/18 08:57:03 Done.
58 ///
59 /// Depending on IR encoding of mixins, [target] might be the constructor of
60 /// the first non-mixin-application superclass of the class of [constructor].
61 ///
62 /// For instance
63 ///
64 /// class M {}
65 /// class C extends Object with M {}
66 ///
67 /// The default constructor of `C` might have the no-name constructor of
68 /// `Object` as target instead of the no-name constructor of the unnamed
69 /// mixin application `Object+M`.
70 ConstructorEntity getSuperConstructor(
71 ir.Constructor constructor, ir.Member target);
72
56 /// Returns the [MemberEntity] corresponding to the member [node]. 73 /// Returns the [MemberEntity] corresponding to the member [node].
57 MemberEntity getMember(ir.Member node); 74 MemberEntity getMember(ir.Member node);
58 75
59 /// Returns the [FunctionEntity] corresponding to the procedure [node]. 76 /// Returns the [FunctionEntity] corresponding to the procedure [node].
60 FunctionEntity getMethod(ir.Procedure node); 77 FunctionEntity getMethod(ir.Procedure node);
61 78
62 /// Returns the [FieldEntity] corresponding to the field [node]. 79 /// Returns the [FieldEntity] corresponding to the field [node].
63 FieldEntity getField(ir.Field node); 80 FieldEntity getField(ir.Field node);
64 81
65 /// Returns the [ClassEntity] corresponding to the class [node]. 82 /// Returns the [ClassEntity] corresponding to the class [node].
(...skipping 748 matching lines...) Expand 10 before | Expand all | Expand 10 after
814 } 831 }
815 if (isRedirecting) { 832 if (isRedirecting) {
816 return new RedirectingGenerativeConstantConstructor( 833 return new RedirectingGenerativeConstantConstructor(
817 defaultValues, superConstructorInvocation); 834 defaultValues, superConstructorInvocation);
818 } else { 835 } else {
819 return new GenerativeConstantConstructor( 836 return new GenerativeConstantConstructor(
820 type, defaultValues, fieldMap, superConstructorInvocation); 837 type, defaultValues, fieldMap, superConstructorInvocation);
821 } 838 }
822 } 839 }
823 } 840 }
OLDNEW
« no previous file with comments | « no previous file | pkg/compiler/lib/src/kernel/element_map_impl.dart » ('j') | pkg/compiler/lib/src/ssa/kernel_impact.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698