Implement custom TargetElementEvaluator KT-4190 #Fixed

This commit is contained in:
Alexey Sedunov
2013-11-18 17:10:57 +04:00
parent 38b38e7b6d
commit 6b971fa50c
16 changed files with 131 additions and 2 deletions
@@ -23,6 +23,7 @@ import org.jetbrains.jet.lang.psi.JetDeclaration
import org.jetbrains.jet.lang.psi.JetClass
import java.util.ArrayList
import org.jetbrains.jet.lang.psi.JetClassOrObject
import org.jetbrains.jet.lexer.JetTokens
fun PsiElement.getParentByTypeAndPredicate<T: PsiElement>(
parentClass : Class<T>, strict : Boolean = false, predicate: (T) -> Boolean
@@ -66,4 +67,6 @@ fun JetClassOrObject.effectiveDeclarations(): List<JetDeclaration> =
getDeclarations() + getPrimaryConstructorParameters().filter { p -> p.getValOrVarNode() != null }
else ->
getDeclarations()
}
}
fun JetClass.isAbstract() = isTrait() || hasModifier(JetTokens.ABSTRACT_KEYWORD)