code: protected void findClassNames(String packageName, boolean includeSubPackages, Set<String> classSet, Filter<? super String> filter, ClassLoader classLoader) {
  
      ResourceVisitor visitor = new ClassNameCollector(classSet, filter);
      visitResourceNames(packageName, includeSubPackages, classLoader, visitor);
    }
docs: @see #findClassNames(String, boolean, Filter, ClassLoader)
  
  @param packageName is the name of the {@link Package} to scan.
  @param includeSubPackages - if {@code true} all sub-packages of the specified {@link Package} will be included in
  the search.
  @param classSet is where to add the classes.
  @param filter is used to {@link Filter#accept(Object) filter} the {@link Class}-names to be added to the resulting
  {@link Set}. The {@link Filter} will receive {@link Class#getName() fully qualified class-names} as argument
  (e.g. "net.sf.mmm.reflect.api.ReflectionUtil").
  @param classLoader is the explicit {@link ClassLoader} to use.
  @if the operation failed with an I/O error.