Skip to content

Commit 9680f2f

Browse files
committed
Add explicit result type to some non-private methods
Add explicit result type to methods where Scala 2 and Scala 3 disagree with the inferred type. The aim is to have the same type in the Scala 2 pickles and the Scala 3 TASTy. Follow up of scala/scala#10435 These where identified in and tested in * #18032 * #18029 * #17975 (BitSet)
1 parent 8232eea commit 9680f2f

File tree

7 files changed

+24
-24
lines changed

7 files changed

+24
-24
lines changed

library/src/scala/collection/concurrent/TrieMap.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -438,7 +438,7 @@ private[concurrent] object INode {
438438
private[concurrent] final class FailedNode[K, V](p: MainNode[K, V]) extends MainNode[K, V] {
439439
WRITE_PREV(p)
440440

441-
def string(lev: Int) = throw new UnsupportedOperationException
441+
def string(lev: Int): Nothing = throw new UnsupportedOperationException
442442

443443
def cachedSize(ct: AnyRef): Int = throw new UnsupportedOperationException
444444

library/src/scala/collection/immutable/ArraySeq.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
325325

326326
@SerialVersionUID(3L)
327327
final class ofRef[T <: AnyRef](val unsafeArray: Array[T]) extends ArraySeq[T] {
328-
def elemTag = ClassTag[T](unsafeArray.getClass.getComponentType)
328+
def elemTag: ClassTag[T] = ClassTag[T](unsafeArray.getClass.getComponentType)
329329
def length: Int = unsafeArray.length
330330
@throws[ArrayIndexOutOfBoundsException]
331331
def apply(i: Int): T = unsafeArray(i)

library/src/scala/collection/immutable/BitSet.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ sealed abstract class BitSet
4141
override protected def newSpecificBuilder: Builder[Int, BitSet] = bitSetFactory.newBuilder
4242
override def empty: BitSet = bitSetFactory.empty
4343

44-
def bitSetFactory = BitSet
44+
def bitSetFactory: BitSet.type = BitSet
4545

4646
protected[collection] def fromBitMaskNoCopy(elems: Array[Long]): BitSet = BitSet.fromBitMaskNoCopy(elems)
4747

library/src/scala/collection/mutable/ArraySeq.scala

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
139139

140140
@SerialVersionUID(3L)
141141
final class ofRef[T <: AnyRef](val array: Array[T]) extends ArraySeq[T] {
142-
def elemTag = ClassTag[T](array.getClass.getComponentType)
142+
def elemTag: ClassTag[T] = ClassTag[T](array.getClass.getComponentType)
143143
def length: Int = array.length
144144
def apply(index: Int): T = array(index)
145145
def update(index: Int, elem: T): Unit = { array(index) = elem }
@@ -161,7 +161,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
161161

162162
@SerialVersionUID(3L)
163163
final class ofByte(val array: Array[Byte]) extends ArraySeq[Byte] {
164-
def elemTag = ClassTag.Byte
164+
def elemTag: ClassTag.Byte.type = ClassTag.Byte
165165
def length: Int = array.length
166166
def apply(index: Int): Byte = array(index)
167167
def update(index: Int, elem: Byte): Unit = { array(index) = elem }
@@ -180,7 +180,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
180180

181181
@SerialVersionUID(3L)
182182
final class ofShort(val array: Array[Short]) extends ArraySeq[Short] {
183-
def elemTag = ClassTag.Short
183+
def elemTag: ClassTag.Short.type = ClassTag.Short
184184
def length: Int = array.length
185185
def apply(index: Int): Short = array(index)
186186
def update(index: Int, elem: Short): Unit = { array(index) = elem }
@@ -199,7 +199,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
199199

200200
@SerialVersionUID(3L)
201201
final class ofChar(val array: Array[Char]) extends ArraySeq[Char] {
202-
def elemTag = ClassTag.Char
202+
def elemTag: ClassTag.Char.type = ClassTag.Char
203203
def length: Int = array.length
204204
def apply(index: Int): Char = array(index)
205205
def update(index: Int, elem: Char): Unit = { array(index) = elem }
@@ -239,7 +239,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
239239

240240
@SerialVersionUID(3L)
241241
final class ofInt(val array: Array[Int]) extends ArraySeq[Int] {
242-
def elemTag = ClassTag.Int
242+
def elemTag: ClassTag.Int.type = ClassTag.Int
243243
def length: Int = array.length
244244
def apply(index: Int): Int = array(index)
245245
def update(index: Int, elem: Int): Unit = { array(index) = elem }
@@ -258,7 +258,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
258258

259259
@SerialVersionUID(3L)
260260
final class ofLong(val array: Array[Long]) extends ArraySeq[Long] {
261-
def elemTag = ClassTag.Long
261+
def elemTag: ClassTag.Long.type = ClassTag.Long
262262
def length: Int = array.length
263263
def apply(index: Int): Long = array(index)
264264
def update(index: Int, elem: Long): Unit = { array(index) = elem }
@@ -277,7 +277,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
277277

278278
@SerialVersionUID(3L)
279279
final class ofFloat(val array: Array[Float]) extends ArraySeq[Float] {
280-
def elemTag = ClassTag.Float
280+
def elemTag: ClassTag.Float.type = ClassTag.Float
281281
def length: Int = array.length
282282
def apply(index: Int): Float = array(index)
283283
def update(index: Int, elem: Float): Unit = { array(index) = elem }
@@ -296,7 +296,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
296296

297297
@SerialVersionUID(3L)
298298
final class ofDouble(val array: Array[Double]) extends ArraySeq[Double] {
299-
def elemTag = ClassTag.Double
299+
def elemTag: ClassTag.Double.type = ClassTag.Double
300300
def length: Int = array.length
301301
def apply(index: Int): Double = array(index)
302302
def update(index: Int, elem: Double): Unit = { array(index) = elem }
@@ -315,7 +315,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
315315

316316
@SerialVersionUID(3L)
317317
final class ofBoolean(val array: Array[Boolean]) extends ArraySeq[Boolean] {
318-
def elemTag = ClassTag.Boolean
318+
def elemTag: ClassTag.Boolean.type = ClassTag.Boolean
319319
def length: Int = array.length
320320
def apply(index: Int): Boolean = array(index)
321321
def update(index: Int, elem: Boolean): Unit = { array(index) = elem }
@@ -331,7 +331,7 @@ object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq] { self =>
331331

332332
@SerialVersionUID(3L)
333333
final class ofUnit(val array: Array[Unit]) extends ArraySeq[Unit] {
334-
def elemTag = ClassTag.Unit
334+
def elemTag: ClassTag.Unit.type = ClassTag.Unit
335335
def length: Int = array.length
336336
def apply(index: Int): Unit = array(index)
337337
def update(index: Int, elem: Unit): Unit = { array(index) = elem }

library/src/scala/collection/mutable/BitSet.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ class BitSet(protected[collection] final var elems: Array[Long])
5151
override protected def newSpecificBuilder: Builder[Int, BitSet] = bitSetFactory.newBuilder
5252
override def empty: BitSet = bitSetFactory.empty
5353

54-
def bitSetFactory = BitSet
54+
def bitSetFactory: BitSet.type = BitSet
5555

5656
override def unsorted: Set[Int] = this
5757

library/src/scala/collection/mutable/UnrolledBuffer.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ sealed class UnrolledBuffer[T](implicit val tag: ClassTag[T])
8989
// def setLengthPolicy(nextLength: Int => Int): Unit = { myLengthPolicy = nextLength }
9090
private[collection] def calcNextLength(sz: Int) = sz // myLengthPolicy(sz)
9191

92-
def classTagCompanion = UnrolledBuffer
92+
def classTagCompanion: UnrolledBuffer.type = UnrolledBuffer
9393

9494
/** Concatenates the target unrolled buffer to this unrolled buffer.
9595
*

library/src/scala/reflect/Manifest.scala

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ object ManifestFactory {
173173

174174
@SerialVersionUID(1L)
175175
final private[reflect] class ByteManifest extends AnyValManifest[scala.Byte]("Byte") {
176-
def runtimeClass = java.lang.Byte.TYPE
176+
def runtimeClass: Class[java.lang.Byte] = java.lang.Byte.TYPE
177177
@inline override def newArray(len: Int): Array[Byte] = new Array[Byte](len)
178178
override def newWrappedArray(len: Int): ArraySeq[Byte] = new ArraySeq.ofByte(new Array[Byte](len))
179179
override def newArrayBuilder(): ArrayBuilder[Byte] = new ArrayBuilder.ofByte()
@@ -189,7 +189,7 @@ object ManifestFactory {
189189

190190
@SerialVersionUID(1L)
191191
final private[reflect] class ShortManifest extends AnyValManifest[scala.Short]("Short") {
192-
def runtimeClass = java.lang.Short.TYPE
192+
def runtimeClass: Class[java.lang.Short] = java.lang.Short.TYPE
193193
@inline override def newArray(len: Int): Array[Short] = new Array[Short](len)
194194
override def newWrappedArray(len: Int): ArraySeq[Short] = new ArraySeq.ofShort(new Array[Short](len))
195195
override def newArrayBuilder(): ArrayBuilder[Short] = new ArrayBuilder.ofShort()
@@ -205,7 +205,7 @@ object ManifestFactory {
205205

206206
@SerialVersionUID(1L)
207207
final private[reflect] class CharManifest extends AnyValManifest[scala.Char]("Char") {
208-
def runtimeClass = java.lang.Character.TYPE
208+
def runtimeClass: Class[java.lang.Character] = java.lang.Character.TYPE
209209
@inline override def newArray(len: Int): Array[Char] = new Array[Char](len)
210210
override def newWrappedArray(len: Int): ArraySeq[Char] = new ArraySeq.ofChar(new Array[Char](len))
211211
override def newArrayBuilder(): ArrayBuilder[Char] = new ArrayBuilder.ofChar()
@@ -221,7 +221,7 @@ object ManifestFactory {
221221

222222
@SerialVersionUID(1L)
223223
final private[reflect] class IntManifest extends AnyValManifest[scala.Int]("Int") {
224-
def runtimeClass = java.lang.Integer.TYPE
224+
def runtimeClass: Class[java.lang.Integer] = java.lang.Integer.TYPE
225225
@inline override def newArray(len: Int): Array[Int] = new Array[Int](len)
226226
override def newWrappedArray(len: Int): ArraySeq[Int] = new ArraySeq.ofInt(new Array[Int](len))
227227
override def newArrayBuilder(): ArrayBuilder[Int] = new ArrayBuilder.ofInt()
@@ -237,7 +237,7 @@ object ManifestFactory {
237237

238238
@SerialVersionUID(1L)
239239
final private[reflect] class LongManifest extends AnyValManifest[scala.Long]("Long") {
240-
def runtimeClass = java.lang.Long.TYPE
240+
def runtimeClass: Class[java.lang.Long] = java.lang.Long.TYPE
241241
@inline override def newArray(len: Int): Array[Long] = new Array[Long](len)
242242
override def newWrappedArray(len: Int): ArraySeq[Long] = new ArraySeq.ofLong(new Array[Long](len))
243243
override def newArrayBuilder(): ArrayBuilder[Long] = new ArrayBuilder.ofLong()
@@ -253,7 +253,7 @@ object ManifestFactory {
253253

254254
@SerialVersionUID(1L)
255255
final private[reflect] class FloatManifest extends AnyValManifest[scala.Float]("Float") {
256-
def runtimeClass = java.lang.Float.TYPE
256+
def runtimeClass: Class[java.lang.Float] = java.lang.Float.TYPE
257257
@inline override def newArray(len: Int): Array[Float] = new Array[Float](len)
258258
override def newWrappedArray(len: Int): ArraySeq[Float] = new ArraySeq.ofFloat(new Array[Float](len))
259259
override def newArrayBuilder(): ArrayBuilder[Float] = new ArrayBuilder.ofFloat()
@@ -269,7 +269,7 @@ object ManifestFactory {
269269

270270
@SerialVersionUID(1L)
271271
final private[reflect] class DoubleManifest extends AnyValManifest[scala.Double]("Double") {
272-
def runtimeClass = java.lang.Double.TYPE
272+
def runtimeClass: Class[java.lang.Double] = java.lang.Double.TYPE
273273
@inline override def newArray(len: Int): Array[Double] = new Array[Double](len)
274274
override def newWrappedArray(len: Int): ArraySeq[Double] = new ArraySeq.ofDouble(new Array[Double](len))
275275
override def newArrayBuilder(): ArrayBuilder[Double] = new ArrayBuilder.ofDouble()
@@ -286,7 +286,7 @@ object ManifestFactory {
286286

287287
@SerialVersionUID(1L)
288288
final private[reflect] class BooleanManifest extends AnyValManifest[scala.Boolean]("Boolean") {
289-
def runtimeClass = java.lang.Boolean.TYPE
289+
def runtimeClass: Class[java.lang.Boolean] = java.lang.Boolean.TYPE
290290
@inline override def newArray(len: Int): Array[Boolean] = new Array[Boolean](len)
291291
override def newWrappedArray(len: Int): ArraySeq[Boolean] = new ArraySeq.ofBoolean(new Array[Boolean](len))
292292
override def newArrayBuilder(): ArrayBuilder[Boolean] = new ArrayBuilder.ofBoolean()
@@ -302,7 +302,7 @@ object ManifestFactory {
302302

303303
@SerialVersionUID(1L)
304304
final private[reflect] class UnitManifest extends AnyValManifest[scala.Unit]("Unit") {
305-
def runtimeClass = java.lang.Void.TYPE
305+
def runtimeClass: Class[java.lang.Void] = java.lang.Void.TYPE
306306
@inline override def newArray(len: Int): Array[Unit] = new Array[Unit](len)
307307
override def newWrappedArray(len: Int): ArraySeq[Unit] = new ArraySeq.ofUnit(new Array[Unit](len))
308308
override def newArrayBuilder(): ArrayBuilder[Unit] = new ArrayBuilder.ofUnit()

0 commit comments

Comments
 (0)