Index: pkg/compiler/lib/src/kernel/element_map.dart |
diff --git a/pkg/compiler/lib/src/kernel/element_map.dart b/pkg/compiler/lib/src/kernel/element_map.dart |
index f66804a9529e58c258495347c158cdbcce685db9..57e9af31c0936b7f2eaf1874c7c241546b6e72b4 100644 |
--- a/pkg/compiler/lib/src/kernel/element_map.dart |
+++ b/pkg/compiler/lib/src/kernel/element_map.dart |
@@ -53,6 +53,23 @@ abstract class KernelToElementMap { |
/// constructor [node]. |
ConstructorEntity getConstructor(ir.Member node); |
+ /// Returns the [ConstructorEntity] corresponding to a super initializer |
+ /// 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.
|
+ /// |
+ /// Depending on IR encoding of mixins, [target] might be the constructor of |
+ /// the first non-mixin-application superclass of the class of [constructor]. |
+ /// |
+ /// For instance |
+ /// |
+ /// class M {} |
+ /// class C extends Object with M {} |
+ /// |
+ /// The default constructor of `C` might have the no-name constructor of |
+ /// `Object` as target instead of the no-name constructor of the unnamed |
+ /// mixin application `Object+M`. |
+ ConstructorEntity getSuperConstructor( |
+ ir.Constructor constructor, ir.Member target); |
+ |
/// Returns the [MemberEntity] corresponding to the member [node]. |
MemberEntity getMember(ir.Member node); |