Changed policy for properties from methods like "getURL()""

This commit is contained in:
Valentin Kipyatkov
2015-07-17 16:45:10 +03:00
parent 0ac990e1a0
commit 4a8adacedd
9 changed files with 104 additions and 46 deletions
@@ -26,6 +26,7 @@ import org.jetbrains.kotlin.types.ErrorUtils
import org.jetbrains.kotlin.types.JetType
import org.jetbrains.kotlin.types.TypeUtils
import org.jetbrains.kotlin.types.checker.JetTypeChecker
import org.jetbrains.kotlin.util.capitalizeDecapitalize.decapitalizeSmart
import java.util.*
import java.util.regex.Pattern
@@ -240,12 +241,12 @@ public object KotlinNameSuggester {
val upperCaseLetter = Character.isUpperCase(c)
if (i == 0) {
addName(if (startLowerCase) decapitalize(s) else s, validator)
addName(if (startLowerCase) s.decapitalizeSmart() else s, validator)
}
else {
if (upperCaseLetter && !upperCaseLetterBefore) {
val substring = s.substring(i)
addName(if (startLowerCase) decapitalize(substring) else substring, validator)
addName(if (startLowerCase) substring.decapitalizeSmart() else substring, validator)
}
}
@@ -253,27 +254,6 @@ public object KotlinNameSuggester {
}
}
private fun decapitalize(s: String): String {
var c = s.charAt(0)
if (!Character.isUpperCase(c)) return s
val builder = StringBuilder(s.length())
var decapitalize = true
for (i in 0..s.length() - 1) {
c = s.charAt(i)
if (decapitalize) {
if (Character.isUpperCase(c)) {
c = Character.toLowerCase(c)
}
else {
decapitalize = false
}
}
builder.append(c)
}
return builder.toString()
}
private fun deleteNonLetterFromString(s: String): String {
val pattern = Pattern.compile("[^a-zA-Z]")
val matcher = pattern.matcher(s)