Minor: toString() for NONE filter
This commit is contained in:
@@ -17,23 +17,23 @@
|
|||||||
package org.jetbrains.kotlin.resolve
|
package org.jetbrains.kotlin.resolve
|
||||||
|
|
||||||
import org.jetbrains.kotlin.psi.KtBlockExpression
|
import org.jetbrains.kotlin.psi.KtBlockExpression
|
||||||
import org.jetbrains.kotlin.psi.KtElement
|
|
||||||
import org.jetbrains.kotlin.psi.KtExpression
|
import org.jetbrains.kotlin.psi.KtExpression
|
||||||
import org.jetbrains.kotlin.psi.KtPsiUtil
|
import org.jetbrains.kotlin.psi.KtPsiUtil
|
||||||
|
|
||||||
open class StatementFilter {
|
open class StatementFilter {
|
||||||
|
|
||||||
open val filter: ((KtExpression) -> Boolean)?
|
open val filter: ((KtExpression) -> Boolean)?
|
||||||
get() = null
|
get() = null
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
@JvmField val NONE: StatementFilter = StatementFilter()
|
@JvmField val NONE = object : StatementFilter() {
|
||||||
|
override fun toString() = "NONE"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun StatementFilter.filterStatements(block: KtBlockExpression): List<KtExpression> {
|
fun StatementFilter.filterStatements(block: KtBlockExpression): List<KtExpression> {
|
||||||
if (filter == null || block is KtPsiUtil.KtExpressionWrapper) return block.getStatements()
|
if (filter == null || block is KtPsiUtil.KtExpressionWrapper) return block.statements
|
||||||
return block.getStatements().filter { filter!!(it) }
|
return block.statements.filter { filter!!(it) }
|
||||||
}
|
}
|
||||||
|
|
||||||
fun StatementFilter.getLastStatementInABlock(block: KtBlockExpression) = filterStatements(block).lastOrNull()
|
fun StatementFilter.getLastStatementInABlock(block: KtBlockExpression) = filterStatements(block).lastOrNull()
|
||||||
Reference in New Issue
Block a user