Iterators replaced with streams where appropriate

This commit is contained in:
Andrey Breslav
2014-04-29 15:51:16 +04:00
parent 19719f9747
commit c6bd4a22ef
11 changed files with 21 additions and 24 deletions
@@ -43,7 +43,7 @@ class LazyJavaAnnotations(c: LazyJavaResolverContextWithTypes, val annotationOwn
[suppress("UNCHECKED_CAST")] // any iterator can be cast to MutableIterator
override fun iterator(): MutableIterator<AnnotationDescriptor>
= annotationOwner.getAnnotations().iterator().map { annotationDescriptors(it) }.filterNotNull() as MutableIterator
= annotationOwner.getAnnotations().stream().map { annotationDescriptors(it) }.filterNotNull().iterator() as MutableIterator
override fun isEmpty() = iterator().hasNext()
}
@@ -196,7 +196,7 @@ class LazyJavaClassDescriptor(
listOf(jlObject ?: KotlinBuiltIns.getInstance().getAnyType())
}
else
supertypes.iterator()
supertypes.stream()
.map {
supertype ->
c.typeResolver.transformJavaType(supertype, TypeUsage.SUPERTYPE.toAttributes())
@@ -61,7 +61,7 @@ public abstract class LazyJavaMemberScope(
->
val methods = memberIndex().findMethodsByName(name)
val functions = LinkedHashSet(
methods.iterator()
methods.stream()
// values() and valueOf() are added manually, see LazyJavaClassDescriptor::getClassObjectDescriptor()
.filter{ m -> !DescriptorResolverUtils.shouldBeInEnumClassObject(m) }
.flatMap {
@@ -69,9 +69,9 @@ public abstract class LazyJavaMemberScope(
val function = resolveMethodToFunctionDescriptor(m, true)
val samAdapter = resolveSamAdapter(function)
if (samAdapter != null)
listOf(function, samAdapter).iterator()
listOf(function, samAdapter).stream()
else
listOf(function).iterator()
listOf(function).stream()
}.toList())
if (_containingDeclaration is JavaPackageFragmentDescriptor) {
@@ -90,7 +90,7 @@ public class LazyPackageFragmentScopeForJavaPackage(
override fun computeMemberIndex(): MemberIndex = computeMemberIndexForSamConstructors(EMPTY_MEMBER_INDEX)
override fun getAllClassNames(): Collection<Name> {
return jPackage.getClasses().iterator()
return jPackage.getClasses().stream()
.filter { c -> c.getOriginKind() != JavaClass.OriginKind.KOTLIN_LIGHT_CLASS }
.map { c -> c.getName() }.toList()
}
@@ -126,7 +126,7 @@ public class LazyPackageFragmentScopeForJavaClass(
// We do not filter by hasStaticMembers() because it's slow (e.g. it triggers light class generation),
// and there's no harm in having some names in the result that can not be resolved
override fun getSubPackages(): Collection<FqName> = jClass.getInnerClasses().iterator()
override fun getSubPackages(): Collection<FqName> = jClass.getInnerClasses().stream()
.filter { c -> c.isStatic() }
.map { c -> c.getFqName().sure("Nested class has no fqName: $c}") }.toList()
}
@@ -55,8 +55,8 @@ open class ClassMemberIndex(val jClass: JavaClass, filter: (JavaMember) -> Boole
!DescriptorResolverUtils.isObjectMethodInInterface(m)
}
private val methods = jClass.getMethods().iterator().filter(methodFilter).groupBy { m -> m.getName() }
private val fields = jClass.getFields().iterator().filter(memberFilter).valuesToMap { m -> m.getName() }
private val methods = jClass.getMethods().stream().filter(methodFilter).groupBy { m -> m.getName() }
private val fields = jClass.getFields().stream().filter(memberFilter).valuesToMap { m -> m.getName() }
override fun findMethodsByName(name: Name): Collection<JavaMethod> {
return methods[name] ?: listOf()
@@ -65,5 +65,5 @@ open class ClassMemberIndex(val jClass: JavaClass, filter: (JavaMember) -> Boole
override fun getAllMethodNames(): Collection<Name> = jClass.getAllMethods().iterator().filter(methodFilter).map { m -> m.getName() }.toList()
override fun findFieldByName(name: Name): JavaField? = fields[name]
override fun getAllFieldNames() = jClass.getAllFields().iterator().filter(memberFilter).map { m -> m.getName() }.toList()
override fun getAllFieldNames() = jClass.getAllFields().stream().filter(memberFilter).map { m -> m.getName() }.toList()
}