@Override public Collection<IClass> getAllImplementedInterfaces() { Collection<IClass> realIfaces = realType.getAllImplementedInterfaces(); if (realType.isInterface()) { HashSet<IClass> result = HashSetFactory.make(realIfaces); result.add(realType); return result; } else { return realIfaces; } }
@Override public Collection<IClass> getAllImplementedInterfaces() { Collection<IClass> realIfaces = realType.getAllImplementedInterfaces(); if (realType.isInterface()) { HashSet<IClass> result = HashSetFactory.make(realIfaces); result.add(realType); return result; } else { return realIfaces; } }
private void registerInstanceWithAllInterfaces(IClass klass, int index) { Collection<IClass> ifaces = klass.getAllImplementedInterfaces(); for (IClass I : ifaces) { MutableIntSet set = findOrCreateSparseSetForClass(I); set.add(index); if (DEBUG) { System.err.println("dense filter for interface " + I + ' ' + set); } } }
private void registerInstanceWithAllInterfaces(IClass klass, int index) { Collection<IClass> ifaces = klass.getAllImplementedInterfaces(); for (IClass I : ifaces) { MutableIntSet set = findOrCreateSparseSetForClass(I); set.add(index); if (DEBUG) { System.err.println("dense filter for interface " + I + ' ' + set); } } }
private Collection<IClass> gatherInterfaces() { Set<IClass> result = HashSetFactory.make(); result.addAll(getDirectInterfaces()); if (getSuperclass() != null) { result.addAll(getSuperclass().getAllImplementedInterfaces()); } return result; }
private Collection<IClass> gatherInterfaces() { Set<IClass> result = HashSetFactory.make(); result.addAll(getDirectInterfaces()); if (getSuperclass() != null) { result.addAll(getSuperclass().getAllImplementedInterfaces()); } return result; }
@Override public Collection<IClass> getAllImplementedInterfaces() { IClass iface = getClassHierarchy().lookupClass(invoke.getDeclaredResultType()); Set<IClass> result = HashSetFactory.make(iface.getAllImplementedInterfaces()); result.add(iface); return result; }
@Override public Collection<IClass> getAllImplementedInterfaces() { IClass iface = getClassHierarchy().lookupClass(invoke.getDeclaredResultType()); Set<IClass> result = HashSetFactory.make(iface.getAllImplementedInterfaces()); result.add(iface); return result; }
/** * @return Collection of IClasses, representing the interfaces this class implements. */ protected Collection<IClass> computeAllInterfacesAsCollection() { Collection<? extends IClass> c = getDirectInterfaces(); Set<IClass> result = HashSetFactory.make(); for (IClass klass : c) { if (klass.isInterface()) { result.add(klass); } else { Warnings.add(ClassHierarchyWarning.create("expected an interface " + klass)); } } // at this point result holds all interfaces the class directly extends. // now expand to a fixed point. Set<IClass> last = null; do { last = HashSetFactory.make(result); for (IClass i : last) { result.addAll(i.getDirectInterfaces()); } } while (last.size() < result.size()); // now add any interfaces implemented by the super class IClass sup = null; sup = getSuperclass(); if (sup != null) { result.addAll(sup.getAllImplementedInterfaces()); } return result; }
/** * @return Collection of IClasses, representing the interfaces this class implements. */ protected Collection<IClass> computeAllInterfacesAsCollection() { Collection<? extends IClass> c = getDirectInterfaces(); Set<IClass> result = HashSetFactory.make(); for (IClass klass : c) { if (klass.isInterface()) { result.add(klass); } else { Warnings.add(ClassHierarchyWarning.create("expected an interface " + klass)); } } // at this point result holds all interfaces the class directly extends. // now expand to a fixed point. Set<IClass> last = null; do { last = HashSetFactory.make(result); for (IClass i : last) { result.addAll(i.getDirectInterfaces()); } } while (last.size() < result.size()); // now add any interfaces implemented by the super class IClass sup = null; sup = getSuperclass(); if (sup != null) { result.addAll(sup.getAllImplementedInterfaces()); } return result; }
/** * Perform needed bookkeeping when a new class is discovered. */ @Override protected void updateSetsForNewClass(IClass klass, InstanceKey iKey, CGNode node, NewSiteReference n) { // set up the selector map to record each method that class implements registerImplementedMethods(klass, iKey); for (IClass c : klass.getAllImplementedInterfaces()) { registerImplementedMethods(c, iKey); } klass = klass.getSuperclass(); while (klass != null) { registerImplementedMethods(klass, iKey); klass = klass.getSuperclass(); } }
/** * Perform needed bookkeeping when a new class is discovered. */ @Override protected void updateSetsForNewClass(IClass klass, InstanceKey iKey, CGNode node, NewSiteReference n) { // set up the selector map to record each method that class implements registerImplementedMethods(klass, iKey); for (IClass c : klass.getAllImplementedInterfaces()) { registerImplementedMethods(c, iKey); } klass = klass.getSuperclass(); while (klass != null) { registerImplementedMethods(klass, iKey); klass = klass.getSuperclass(); } }
private void registerArrayInstanceWithAllInterfacesOfElement(int index, IClass elementClass, int dim) { Collection<IClass> ifaces = null; ifaces = elementClass.getAllImplementedInterfaces(); for (IClass I : ifaces) { TypeReference iArrayRef = makeArray(I.getReference(), dim); IClass iArrayClass = null; iArrayClass = I.getClassLoader().lookupClass(iArrayRef.getName()); MutableIntSet set = findOrCreateSparseSetForClass(iArrayClass); set.add(index); if (DEBUG) { System.err.println("dense filter for interface " + iArrayClass + ' ' + set); } } }
private void registerArrayInstanceWithAllInterfacesOfElement(int index, IClass elementClass, int dim) { Collection<IClass> ifaces = null; ifaces = elementClass.getAllImplementedInterfaces(); for (IClass I : ifaces) { TypeReference iArrayRef = makeArray(I.getReference(), dim); IClass iArrayClass = null; iArrayClass = I.getClassLoader().lookupClass(iArrayRef.getName()); MutableIntSet set = findOrCreateSparseSetForClass(iArrayClass); set.add(index); if (DEBUG) { System.err.println("dense filter for interface " + iArrayClass + ' ' + set); } } }
for (IClass iface : appClass.getAllImplementedInterfaces ()) { logger.trace("Heuristic: \t implements {}", iface.getName().toString()); if (isAPIComponent(iface)) { final Collection<IClass> iFaces = appClass.getAllImplementedInterfaces(); for (final IClass iFace : iFaces) { if (isAPIComponent(iFace)) {
for (IClass iface : appClass.getAllImplementedInterfaces ()) { logger.trace("Heuristic: \t implements {}", iface.getName().toString()); if (isAPIComponent(iface)) { final Collection<IClass> iFaces = appClass.getAllImplementedInterfaces(); for (final IClass iFace : iFaces) { if (isAPIComponent(iFace)) {
assert map != null; Collection s; s = c.getAllImplementedInterfaces(); if (s.contains(collection) || s.contains(map)) { return true;
assert map != null; Collection s; s = c.getAllImplementedInterfaces(); if (s.contains(collection) || s.contains(map)) { return true;
try { loadedSuperclasses = computeSuperclasses(klass); loadedSuperInterfaces = klass.getAllImplementedInterfaces(); } catch (Exception e) { if (!superClassHandling.equals(MissingSuperClassHandling.NONE) && e instanceof NoSuperclassFoundException) {
try { loadedSuperclasses = computeSuperclasses(klass); loadedSuperInterfaces = klass.getAllImplementedInterfaces(); } catch (Exception e) { if (!superClassHandling.equals(MissingSuperClassHandling.NONE) && e instanceof NoSuperclassFoundException) {