Deprecated _tmp functions replaced by library ones

This commit is contained in:
Andrey Breslav
2014-04-29 15:46:11 +04:00
parent 4181bcc319
commit 19719f9747
11 changed files with 13 additions and 104 deletions
@@ -94,8 +94,8 @@ public fun JetClass.isAbstract(): Boolean = isTrait() || hasModifier(JetTokens.A
[suppress("UNCHECKED_CAST")] [suppress("UNCHECKED_CAST")]
public fun <T: PsiElement> PsiElement.replaced(newElement: T): T = replace(newElement) as T public fun <T: PsiElement> PsiElement.replaced(newElement: T): T = replace(newElement) as T
public fun JetElement.blockExpressionsOrSingle(): Iterator<JetElement> = public fun JetElement.blockExpressionsOrSingle(): Stream<JetElement> =
if (this is JetBlockExpression) getStatements().iterator() else SingleIterator(this) if (this is JetBlockExpression) getStatements().stream() else listOf(this).stream()
public fun JetElement.outermostLastBlockElement(predicate: (JetElement) -> Boolean = { true }): JetElement? { public fun JetElement.outermostLastBlockElement(predicate: (JetElement) -> Boolean = { true }): JetElement? {
return JetPsiUtil.getOutermostLastBlockElement(this) { e -> e != null && predicate(e) } return JetPsiUtil.getOutermostLastBlockElement(this) { e -> e != null && predicate(e) }
@@ -52,7 +52,7 @@ public class KotlinLightMethodForDeclaration(
cacheManager.createCachedValue<PsiParameterList>({ cacheManager.createCachedValue<PsiParameterList>({
val parameterBuilder = LightParameterListBuilder(getManager(), JetLanguage.INSTANCE) val parameterBuilder = LightParameterListBuilder(getManager(), JetLanguage.INSTANCE)
for ((index, parameter) in delegate.getParameterList().getParameters().withIndices_tmp()) { for ((index, parameter) in delegate.getParameterList().getParameters().withIndices()) {
parameterBuilder.addParameter(KotlinLightParameter(parameter, index, this)) parameterBuilder.addParameter(KotlinLightParameter(parameter, index, this))
} }
@@ -132,7 +132,7 @@ public class LazyJavaClassMemberScope(
val methods = jClass.getMethods() val methods = jClass.getMethods()
val result = ArrayList<ValueParameterDescriptor>(methods.size()) val result = ArrayList<ValueParameterDescriptor>(methods.size())
for ((index, method) in methods.withIndices_tmp()) { for ((index, method) in methods.withIndices()) {
assert(method.getValueParameters().isEmpty(), "Annotation method can't have parameters: " + method) assert(method.getValueParameters().isEmpty(), "Annotation method can't have parameters: " + method)
val jReturnType = method.getReturnType() ?: throw AssertionError("Annotation method has no return type: " + method) val jReturnType = method.getReturnType() ?: throw AssertionError("Annotation method has no return type: " + method)
@@ -173,7 +173,7 @@ public abstract class LazyJavaMemberScope(
jValueParameters: List<JavaValueParameter> jValueParameters: List<JavaValueParameter>
): ResolvedValueParameters { ): ResolvedValueParameters {
var synthesizedNames = false var synthesizedNames = false
val descriptors = jValueParameters.withIndices_tmp().map_tmp { val descriptors = jValueParameters.withIndices().map {
pair -> pair ->
val (index, javaParameter) = pair val (index, javaParameter) = pair
@@ -191,7 +191,7 @@ class LazyJavaTypeResolver(
return typeParameters.map { p -> TypeProjectionImpl(ErrorUtils.createErrorType(p.getName().asString())) } return typeParameters.map { p -> TypeProjectionImpl(ErrorUtils.createErrorType(p.getName().asString())) }
} }
var howTheProjectionIsUsed = if (attr.howThisTypeIsUsed == SUPERTYPE) SUPERTYPE_ARGUMENT else TYPE_ARGUMENT var howTheProjectionIsUsed = if (attr.howThisTypeIsUsed == SUPERTYPE) SUPERTYPE_ARGUMENT else TYPE_ARGUMENT
return javaType.getTypeArguments().withIndices_tmp().map_tmp { return javaType.getTypeArguments().withIndices().map {
javaTypeParameter -> javaTypeParameter ->
val (i, t) = javaTypeParameter val (i, t) = javaTypeParameter
val parameter = if (i >= typeParameters.size) val parameter = if (i >= typeParameters.size)
@@ -1,87 +0,0 @@
package org.jetbrains.jet.utils
import java.util.ArrayList
import kotlin.support.AbstractIterator
//TODO: Remove after updating to new stdlib
[deprecated("use streams instead")]
fun <T: Any> Iterable<T>.firstOrNull_tmp() : T? {
val iterator = this.iterator()
return if (iterator.hasNext()) iterator.next() else null
}
[deprecated("use streams instead")]
public inline fun <K, V> Map<K,V>.filter_tmp(predicate: (Map.Entry<K,V>)->Boolean) : List<Map.Entry<K,V>> {
return filterTo_tmp(ArrayList<Map.Entry<K,V>>(), predicate)
}
[deprecated("use streams instead")]
public inline fun <K, V, C: MutableCollection<in Map.Entry<K,V>>> Map<K,V>.filterTo_tmp(collection: C, predicate: (Map.Entry<K,V>) -> Boolean) : C {
for (element in this) if (predicate(element)) collection.add(element)
return collection
}
[deprecated("use streams instead")]
public fun <T, S> Iterator<T>.zip_tmp(iterator: Iterator<S>): Iterator<Pair<T, S>> = PairIterator_tmp(this, iterator)
[deprecated("use streams instead")]
public fun <T, S> Iterable<T>.zip_tmp(second: Iterable<S>): Iterable<Pair<T, S>> {
val list = ArrayList<Pair<T,S>>()
for (item in iterator().zip_tmp(second.iterator())) {
list.add(item)
}
return list
}
[deprecated("use streams instead")]
public fun <T, R> Iterator<T>.map_tmp(transform : (T) -> R) : Iterator<R> {
return MapIterator_tmp<T, R>(this, transform)
}
[deprecated("use streams instead")]
class MapIterator_tmp<T, R>(val iterator : Iterator<T>, val transform: (T) -> R) : AbstractIterator<R>() {
override protected fun computeNext() : Unit {
if (iterator.hasNext()) {
setNext((transform)(iterator.next()))
} else {
done()
}
}
}
[deprecated("use streams instead")]
public fun <T> Iterable<T>.withIndices_tmp() : Iterator<Pair<Int, T>> {
return IndexIterator_tmp(iterator())
}
[deprecated("use streams instead")]
public fun <T> Array<out T>.withIndices_tmp() : Iterator<Pair<Int, T>> {
return IndexIterator_tmp(iterator())
}
[deprecated("use streams instead")]
class IndexIterator_tmp<T>(val iterator : Iterator<T>): Iterator<Pair<Int, T>> {
private var index : Int = 0
override fun next(): Pair<Int, T> {
return Pair(index++, iterator.next())
}
override fun hasNext(): Boolean {
return iterator.hasNext()
}
}
[deprecated("use streams instead")]
public class PairIterator_tmp<T, S>(
val iterator1 : Iterator<T>, val iterator2 : Iterator<S>
): AbstractIterator<Pair<T, S>>() {
protected override fun computeNext() {
if (iterator1.hasNext() && iterator2.hasNext()) {
setNext(Pair(iterator1.next(), iterator2.next()))
}
else {
done()
}
}
}
@@ -60,8 +60,6 @@ import org.jetbrains.jet.lang.psi.JetTypeReference
import com.intellij.util.containers.ContainerUtil import com.intellij.util.containers.ContainerUtil
import org.jetbrains.jet.lang.diagnostics.DiagnosticUtils import org.jetbrains.jet.lang.diagnostics.DiagnosticUtils
import org.jetbrains.jet.plugin.imports.* import org.jetbrains.jet.plugin.imports.*
import org.jetbrains.jet.lang.descriptors.PackageViewDescriptor
import org.jetbrains.jet.utils.*
//NOTE: this class is based on CopyPasteReferenceProcessor and JavaCopyPasteReferenceProcessor //NOTE: this class is based on CopyPasteReferenceProcessor and JavaCopyPasteReferenceProcessor
public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<ReferenceTransferableData?> { public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<ReferenceTransferableData?> {
@@ -358,7 +356,7 @@ private val ReferenceData.fqName: FqName
private fun zip(first: IntArray, second: IntArray): Iterable<Pair<Int, Int>> { private fun zip(first: IntArray, second: IntArray): Iterable<Pair<Int, Int>> {
assert(first.size == second.size) assert(first.size == second.size)
return first.toList().zip_tmp(second.toList()) return first.zip(second.toList())
} }
private fun PsiElement.isInCopiedArea(fileCopiedFrom: JetFile, startOffsets: IntArray, endOffsets: IntArray): Boolean { private fun PsiElement.isInCopiedArea(fileCopiedFrom: JetFile, startOffsets: IntArray, endOffsets: IntArray): Boolean {
@@ -31,7 +31,6 @@ import org.jetbrains.jet.lang.descriptors.impl.AnonymousFunctionDescriptor
import org.jetbrains.jet.lang.resolve.BindingContextUtils import org.jetbrains.jet.lang.resolve.BindingContextUtils
import org.jetbrains.jet.plugin.references.JetReference import org.jetbrains.jet.plugin.references.JetReference
import org.jetbrains.jet.lang.descriptors.VariableDescriptor import org.jetbrains.jet.lang.descriptors.VariableDescriptor
import org.jetbrains.jet.utils.firstOrNull_tmp
public class ReplaceExplicitFunctionLiteralParamWithItIntention() : PsiElementBaseIntentionAction() { public class ReplaceExplicitFunctionLiteralParamWithItIntention() : PsiElementBaseIntentionAction() {
override fun invoke(project: Project, editor: Editor, element: PsiElement) { override fun invoke(project: Project, editor: Editor, element: PsiElement) {
@@ -75,7 +74,7 @@ public class ReplaceExplicitFunctionLiteralParamWithItIntention() : PsiElementBa
} }
is JetSimpleNameExpression -> { is JetSimpleNameExpression -> {
val reference = expression.getReference() as JetReference? val reference = expression.getReference() as JetReference?
val variableDescriptor = reference?.resolveToDescriptors()?.firstOrNull_tmp() as? VariableDescriptor? val variableDescriptor = reference?.resolveToDescriptors()?.firstOrNull() as? VariableDescriptor?
if (variableDescriptor != null) { if (variableDescriptor != null) {
val containingDescriptor = variableDescriptor.getContainingDeclaration() val containingDescriptor = variableDescriptor.getContainingDeclaration()
if (containingDescriptor is AnonymousFunctionDescriptor) { if (containingDescriptor is AnonymousFunctionDescriptor) {
@@ -33,7 +33,6 @@ import org.jetbrains.jet.lang.descriptors.ValueParameterDescriptor
import org.jetbrains.jet.lang.resolve.BindingContextUtils import org.jetbrains.jet.lang.resolve.BindingContextUtils
import org.jetbrains.jet.lang.psi.JetFunctionLiteral import org.jetbrains.jet.lang.psi.JetFunctionLiteral
import org.jetbrains.jet.plugin.references.JetReference import org.jetbrains.jet.plugin.references.JetReference
import org.jetbrains.jet.utils.firstOrNull_tmp
public class ReplaceItWithExplicitFunctionLiteralParamIntention() : PsiElementBaseIntentionAction() { public class ReplaceItWithExplicitFunctionLiteralParamIntention() : PsiElementBaseIntentionAction() {
override fun invoke(project: Project, editor: Editor, element: PsiElement) { override fun invoke(project: Project, editor: Editor, element: PsiElement) {
@@ -64,7 +63,7 @@ public class ReplaceItWithExplicitFunctionLiteralParamIntention() : PsiElementBa
val bindingContext = AnalyzerFacadeWithCache.getContextForElement(simpleNameExpression) val bindingContext = AnalyzerFacadeWithCache.getContextForElement(simpleNameExpression)
val reference = simpleNameExpression.getReference() as JetReference? val reference = simpleNameExpression.getReference() as JetReference?
val simpleNameTarget = reference?.resolveToDescriptors()?.firstOrNull_tmp() as? ValueParameterDescriptor? val simpleNameTarget = reference?.resolveToDescriptors()?.firstOrNull() as? ValueParameterDescriptor?
if (simpleNameTarget == null || bindingContext.get(BindingContext.AUTO_CREATED_IT, simpleNameTarget) != true) { if (simpleNameTarget == null || bindingContext.get(BindingContext.AUTO_CREATED_IT, simpleNameTarget) != true) {
return false return false
} }
@@ -329,7 +329,7 @@ public fun JetWhenExpression.canMergeWithNext(): Boolean {
val conditions1 = e1.getConditions().toList() val conditions1 = e1.getConditions().toList()
val conditions2 = e2.getConditions().toList() val conditions2 = e2.getConditions().toList()
return conditions1.size == conditions2.size && return conditions1.size == conditions2.size &&
(conditions1 zip_tmp conditions2).all { pair -> JetPsiMatcher.checkElementMatch(pair.first, pair.second)} (conditions1 zip conditions2).all { pair -> JetPsiMatcher.checkElementMatch(pair.first, pair.second)}
} }
fun JetWhenEntry.declarationNames(): Set<String> = fun JetWhenEntry.declarationNames(): Set<String> =
@@ -354,7 +354,7 @@ public fun JetWhenExpression.canMergeWithNext(): Boolean {
val entries1 = getEntries() val entries1 = getEntries()
val entries2 = sibling.getEntries() val entries2 = sibling.getEntries()
return entries1.size == entries2.size && (entries1 zip_tmp entries2).all { pair -> return entries1.size == entries2.size && (entries1 zip entries2).all { pair ->
checkConditions(pair.first, pair.second) && checkBodies(pair.first, pair.second) checkConditions(pair.first, pair.second) && checkBodies(pair.first, pair.second)
} }
} }
@@ -374,7 +374,7 @@ public fun JetWhenExpression.mergeWithNext() {
} }
val sibling = PsiTreeUtil.skipSiblingsForward(this, javaClass<PsiWhiteSpace>()) as JetWhenExpression val sibling = PsiTreeUtil.skipSiblingsForward(this, javaClass<PsiWhiteSpace>()) as JetWhenExpression
for ((entry1, entry2) in getEntries() zip_tmp sibling.getEntries()) { for ((entry1, entry2) in getEntries() zip sibling.getEntries()) {
entry1.getExpression() mergeWith entry2.getExpression() entry1.getExpression() mergeWith entry2.getExpression()
} }
@@ -31,7 +31,7 @@ public object JetPsiPrecedences {
private val precedence: Map<IElementType, Int> private val precedence: Map<IElementType, Int>
{ {
val builder = HashMap<IElementType, Int>() val builder = HashMap<IElementType, Int>()
for ((i, record) in JetExpressionParsing.Precedence.values().withIndices_tmp()) { for ((i, record) in JetExpressionParsing.Precedence.values().withIndices()) {
for (elementType in record.getOperations().getTypes()) { for (elementType in record.getOperations().getTypes()) {
builder[elementType] = i builder[elementType] = i
} }