OLD | NEW |
---|---|
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 Loading... | |
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 Loading... | |
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 } |
OLD | NEW |