JClassType jsoType = program.getJavaScriptObject();
List<JClassType> jsoSubTypes = Lists.create();
if (jsoType != null) {
jsoSubTypes = new ArrayList<JClassType>(
ImmutableList.copyOf(Iterables.filter(get(subClassMap, jsoType), JClassType.class)));
Collections.sort(jsoSubTypes, new HasNameSort());
for (JClassType jsoSubType : jsoSubTypes) {
for (JInterfaceType intf : jsoSubType.getImplements()) {
jsoSingleImpls.put(intf, jsoSubType);
for (JInterfaceType superIntf : get(superInterfaceMap, intf)) {
if (!jsoSingleImpls.containsKey(superIntf)) {