Changes on code review

This commit is contained in:
Valentin Kipyatkov
2015-07-15 16:06:46 +03:00
parent 867b0b5075
commit 53810c67db
7 changed files with 24 additions and 27 deletions
@@ -46,7 +46,7 @@ import org.jetbrains.kotlin.utils.addToStdlib.firstIsInstanceOrNull
public abstract class ElementResolver protected constructor(
public val resolveSession: ResolveSession
) {
public open fun getElementAdditionalResolve(resolveElement: JetElement, contextElement: JetElement, bodyResolveMode: BodyResolveMode): BindingContext {
protected open fun getElementAdditionalResolve(resolveElement: JetElement, contextElement: JetElement, bodyResolveMode: BodyResolveMode): BindingContext {
return performElementAdditionalResolve(resolveElement, resolveElement, bodyResolveMode).first
}
@@ -59,6 +59,7 @@ public abstract class ElementResolver protected constructor(
val elementOfAdditionalResolve = findElementOfAdditionalResolve(contextElement)
if (elementOfAdditionalResolve is JetParameter) {
// Parameters for function literal could be met inside other parameters. We can't make resolveToDescriptors for internal elements.
contextElement = elementOfAdditionalResolve
}
else if (elementOfAdditionalResolve != null) {
@@ -524,7 +524,7 @@ class PartialBodyResolveFilter(
}
private fun JetElement.forTopLevelBlocksInside(action: (JetBlockExpression) -> Unit) {
forEachDescendantOfType({ it !is JetBlockExpression }, action)
forEachDescendantOfType(canGoInside = { it !is JetBlockExpression }, action = action)
}
private fun JetExpression?.isNullLiteral() = this?.getNode()?.getElementType() == JetNodeTypes.NULL