String (String fullName, String shortName) { if (shortName == null) { return "class_" + (classCounter++); } int index = 0; while (index < shortName.length() && Character.isDigit(shortName.charAt(index))) { index++; } if (index == 0 || index == shortName.length()) { return "class_" + (classCounter++); } else { String name = shortName.substring(index); if (setNonStandardClassNames.contains(name)) { return "Inner" + name + "_" + (classCounter++); } else { setNonStandardClassNames.add(name); return "Inner" + name; } } }