js-dossier
js-dossier copied to clipboard
Subclasses nested in superclasses show up redundantly
This minimal repro case
goog.module('AbstractList');
class AbstractList {}
AbstractList.Mutable = class extends AbstractList {};
AbstractList.ArrayList = class extends AbstractList.Mutable {};
exports = AbstractList;
results in the following types in the left-hand panel:
-
AbstractList
-
ArrayList
-
ArrayList.ArrayList
-
ArrayList.Mutable
-
ArrayList.Mutable.ArrayList
-
ArrayList.Mutable.Mutable
-
Mutable
The various aliases are marked as such, but there's still a lot of redundancy (and somewhat strange which are duplicated and which aren't - e.g. why no Mutable.Mutable
?).
Furthermore, if I move ArrayList
to its own file, rather than nesting it, I also end up with a very strange AbstractList.able
class, which is marked as yet another alias to AbstractList.Mutable
.