Skip to content

Commit

Permalink
Move StreamConverters to javaapi
Browse files Browse the repository at this point in the history
  • Loading branch information
lrytz committed Apr 24, 2019
1 parent 463559f commit c9ab1fa
Show file tree
Hide file tree
Showing 8 changed files with 379 additions and 360 deletions.
6 changes: 3 additions & 3 deletions src/library/scala/jdk/Accumulator.scala
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ import scala.collection.{Stepper, StepperShape, mutable}
* stream pipeline into a Scala collection. The
* [[scala.collection.convert.StreamExtensions.StreamHasToScala.toScala]] extension method on Java
* streams (available by importing
* [[scala.jdk.StreamConverters.Ops `scala.jdk.StreamConverters.Ops._`]]) is specialized for
* [[scala.jdk.StreamConverters `scala.jdk.StreamConverters._`]]) is specialized for
* Accumulators: they are built in parallel, the parts are merged efficiently.
*
* Building specialized Accumulators is handled transparently. As a user, using the
Expand All @@ -38,8 +38,8 @@ import scala.collection.{Stepper, StepperShape, mutable}
* deadlocks, see [[https://github.com/scala/bug/issues/9076]].
*
* {{{
* scala> import scala.jdk.StreamConverters.Ops._
* import scala.jdk.StreamConverters.Ops._
* scala> import scala.jdk.StreamConverters._
* import scala.jdk.StreamConverters._
*
* scala> def isPrime(n: Int): Boolean = !(2 +: (3 to Math.sqrt(n).toInt by 2) exists (n % _ == 0))
* isPrime: (n: Int)Boolean
Expand Down
356 changes: 9 additions & 347 deletions src/library/scala/jdk/StreamConverters.scala

Large diffs are not rendered by default.

1 change: 0 additions & 1 deletion src/library/scala/jdk/javaapi/CollectionConverters.scala
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
package scala.jdk.javaapi

import scala.collection.convert.{AsJavaConverters, AsScalaConverters}
import scala.jdk.StreamConverters

/** This object contains methods that convert between Scala and Java collections.
*
Expand Down
358 changes: 358 additions & 0 deletions src/library/scala/jdk/javaapi/StreamConverters.scala

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion test/junit/scala/jdk/StepperTest.scala
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ import org.junit.runner.RunWith
import org.junit.runners.JUnit4

import scala.collection.{AnyStepper, ClassTagIterableFactory, IntStepper, IterableFactory, MapFactory, SortedIterableFactory, SortedMapFactory, SpecificIterableFactory, Stepper, concurrent => cc, immutable => ci, mutable => cm}
import scala.jdk.StreamConverters.Ops._
import scala.jdk.StreamConverters._
import scala.util.chaining._


Expand Down
4 changes: 2 additions & 2 deletions test/junit/scala/jdk/StreamConvertersTest.scala
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import org.junit.Test
import org.junit.runner.RunWith
import org.junit.runners.JUnit4

import StreamConverters.Ops._
import scala.jdk.StreamConverters._

@RunWith(classOf[JUnit4])
class StreamConvertersTest {
Expand Down Expand Up @@ -122,7 +122,7 @@ class StreamConvertersTest {
assert(newLongStream(1).boxed.asJavaPrimitiveStream.isInstanceOf[LongStream])
}

import collection.mutable.{ ArrayBuffer, ArraySeq }
import collection.mutable.{ArrayBuffer, ArraySeq}
def abufO(n: Int) = { val ab = new ArrayBuffer[String]; arrayO(n).foreach(ab += _); ab }
def abufD(n: Int) = { val ab = new ArrayBuffer[Double]; arrayD(n).foreach(ab += _); ab }
def abufI(n: Int) = { val ab = new ArrayBuffer[Int]; arrayI(n).foreach(ab += _); ab }
Expand Down
10 changes: 5 additions & 5 deletions test/junit/scala/jdk/StreamConvertersTypingTest.scala
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ import scala.collection._
class StreamConvertersTypingTest {
@Test
def keyValueSteppers(): Unit = {
import scala.jdk.StreamConverters.Ops._
import scala.jdk.StreamConverters._

// The steppers of LinkedHashMap and LinkedHashSet are not EfficientSplit, because they use
// the default IterableOnce.stepper. We cannot use XTableStepper because that would not yield
Expand Down Expand Up @@ -108,7 +108,7 @@ class StreamConvertersTypingTest {

@Test
def convertStreamToScala(): Unit = {
import scala.jdk.StreamConverters.Ops._
import scala.jdk.StreamConverters._

for (par <- List(false, true)) {
def is = { val s = Vector(1).asJavaSeqStream; if (par) s.parallel else s }
Expand Down Expand Up @@ -255,7 +255,7 @@ class StreamConvertersTypingTest {
}

locally {
import scala.jdk.StreamConverters.Ops._
import scala.jdk.StreamConverters._
val ils = il.stepper
(ils: IntStepper /*with EfficientSubstep*/).nextStep(): Int
val ivs = iv.stepper
Expand Down Expand Up @@ -393,7 +393,7 @@ class StreamConvertersTypingTest {
def ps1: IntStepper with EfficientSplit = r.codePointStepper

locally {
import scala.jdk.StreamConverters.Ops._
import scala.jdk.StreamConverters._
val rss = r.asJavaSeqStream
(rss: IntStream).count()
val rps = r.asJavaParStream
Expand Down Expand Up @@ -430,7 +430,7 @@ class StreamConvertersTypingTest {
val sa = Accumulator("a", "b", "c")

locally {
import scala.jdk.StreamConverters.Ops._
import scala.jdk.StreamConverters._

val ias = ia.stepper
(ias: IntStepper with EfficientSplit).asJavaParStream.count()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
* additional information regarding copyright ownership.
*/

package scala.jdk;
package scala.jdk.javaapi;

import org.junit.Test;
import scala.Tuple2;
Expand Down

0 comments on commit c9ab1fa

Please sign in to comment.