From f218877cf203e3ade9ec568d5b3b54748cde8214 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Thu, 3 Oct 2013 20:32:39 +0400 Subject: [PATCH] Get rid of dependency of PackageClassUtils on StringUtil --- .../jet/lang/resolve/java/PackageClassUtils.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/PackageClassUtils.java b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/PackageClassUtils.java index e7ed0309445..72b5c45e4f5 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/PackageClassUtils.java +++ b/core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/PackageClassUtils.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.resolve.java; -import com.intellij.openapi.util.text.StringUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.resolve.name.FqName; import org.jetbrains.jet.lang.resolve.name.Name; @@ -29,21 +28,25 @@ public final class PackageClassUtils { } // ex. -> _DefaultPackage, a -> APackage, a.b -> BPackage + @NotNull public static String getPackageClassName(@NotNull FqName packageFQN) { if (packageFQN.isRoot()) { return DEFAULT_PACKAGE_CLASS_NAME; } - return StringUtil.capitalize(packageFQN.shortName().asString()) + PACKAGE_CLASS_NAME_SUFFIX; + return capitalizeNonEmptyString(packageFQN.shortName().asString()) + PACKAGE_CLASS_NAME_SUFFIX; } + @NotNull + private static String capitalizeNonEmptyString(@NotNull String s) { + return Character.isUpperCase(s.charAt(0)) ? s : Character.toUpperCase(s.charAt(0)) + s.substring(1); + } + + @NotNull public static FqName getPackageClassFqName(@NotNull FqName packageFQN) { return packageFQN.child(Name.identifier(getPackageClassName(packageFQN))); } public static boolean isPackageClassFqName(@NotNull FqName fqName) { - if (fqName.isRoot()) { - return false; - } - return getPackageClassFqName(fqName.parent()).equals(fqName); + return !fqName.isRoot() && getPackageClassFqName(fqName.parent()).equals(fqName); } }