Set<RefClass> ( RefClass refClass) { final Set<RefClass> dependencies = refClass.getUserData(INITIALIZATION_DEPENDENCY_CLASSES_KEY); if (dependencies != null) { return dependencies; } final Set<RefClass> newDependencies = new HashSet<>(); tabulateInitializationDependencyClasses(refClass, newDependencies); newDependencies.remove(refClass); refClass.putUserData(INITIALIZATION_DEPENDENCY_CLASSES_KEY, newDependencies); return newDependencies; }