Minor changes on code review
This commit is contained in:
@@ -69,8 +69,8 @@ public fun JetPsiFactory.createExpressionByPattern(pattern: String, vararg args:
|
|||||||
val codeStyleManager = CodeStyleManager.getInstance(project)
|
val codeStyleManager = CodeStyleManager.getInstance(project)
|
||||||
|
|
||||||
val stringPlaceholderRanges = allPlaceholders
|
val stringPlaceholderRanges = allPlaceholders
|
||||||
.filter { args[it.getKey()] is String }
|
.filter { args[it.key] is String }
|
||||||
.flatMap { it.getValue() }
|
.flatMap { it.value }
|
||||||
.map { it.range }
|
.map { it.range }
|
||||||
.filterNot { it.isEmpty() }
|
.filterNot { it.isEmpty() }
|
||||||
.sortBy { -it.getStartOffset() }
|
.sortBy { -it.getStartOffset() }
|
||||||
@@ -121,7 +121,6 @@ private fun processPattern(pattern: String, args: Array<out Any>): PatternData {
|
|||||||
var i = 0
|
var i = 0
|
||||||
while (i < pattern.length()) {
|
while (i < pattern.length()) {
|
||||||
var c = pattern[i]
|
var c = pattern[i]
|
||||||
var prevChar = charOrNull(i - 1)
|
|
||||||
|
|
||||||
if (c == '$') {
|
if (c == '$') {
|
||||||
val nextChar = charOrNull(++i)
|
val nextChar = charOrNull(++i)
|
||||||
@@ -138,15 +137,7 @@ private fun processPattern(pattern: String, args: Array<out Any>): PatternData {
|
|||||||
|
|
||||||
val arg: Any? = if (n < args.size()) args[n] else null /* report wrong number of arguments later */
|
val arg: Any? = if (n < args.size()) args[n] else null /* report wrong number of arguments later */
|
||||||
val placeholderText = if (charOrNull(i) != '=') {
|
val placeholderText = if (charOrNull(i) != '=') {
|
||||||
if (arg is String) {
|
if (arg is String) arg else "xyz"
|
||||||
arg
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
if (prevChar?.isJavaIdentifierPart() ?: false) {
|
|
||||||
append(" ")
|
|
||||||
}
|
|
||||||
"xyz"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
check(arg !is String, "do not specify placeholder text for $$n - String argument passed")
|
check(arg !is String, "do not specify placeholder text for $$n - String argument passed")
|
||||||
@@ -172,8 +163,6 @@ private fun processPattern(pattern: String, args: Array<out Any>): PatternData {
|
|||||||
}
|
}
|
||||||
}.toString()
|
}.toString()
|
||||||
|
|
||||||
check(!ranges.isEmpty(), "no placeholders found")
|
|
||||||
|
|
||||||
val max = ranges.keySet().max()!!
|
val max = ranges.keySet().max()!!
|
||||||
for (i in 0..max) {
|
for (i in 0..max) {
|
||||||
check(ranges.contains(i), "no '$$i' placeholder")
|
check(ranges.contains(i), "no '$$i' placeholder")
|
||||||
@@ -209,6 +198,14 @@ public class ExpressionBuilder {
|
|||||||
return this
|
return this
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public fun appendTypeReference(typeRef: JetTypeReference?): ExpressionBuilder {
|
||||||
|
if (typeRef != null) {
|
||||||
|
patternBuilder.append("$" + arguments.size())
|
||||||
|
arguments.add(typeRef)
|
||||||
|
}
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
|
||||||
public fun createExpression(factory: JetPsiFactory): JetExpression {
|
public fun createExpression(factory: JetPsiFactory): JetExpression {
|
||||||
return factory.createExpressionByPattern(patternBuilder.toString(), *arguments.toArray())
|
return factory.createExpressionByPattern(patternBuilder.toString(), *arguments.toArray())
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user