diff --git a/tests/new/test.scala b/tests/new/test.scala deleted file mode 100644 index ac8f67d1530f..000000000000 --- a/tests/new/test.scala +++ /dev/null @@ -1,3 +0,0 @@ -object Test: - - def test = ??? diff --git a/tests/pos/i15154.scala b/tests/pos/i15154.scala new file mode 100644 index 000000000000..42f805e022a9 --- /dev/null +++ b/tests/pos/i15154.scala @@ -0,0 +1,24 @@ +trait RType +trait TypeEntry{ + def typeAdapter: TypeAdapter[_] = ??? +} + +trait TypeAdapter[E] +case class OptionTypeAdapter[E](nullIsNone: Boolean, valueTypeAdapter: TypeAdapter[E]) extends TypeAdapter[E] +case class JavaOptionalTypeAdapter[E](nullIsNone: Boolean, valueTypeAdapter: TypeAdapter[E]) extends TypeAdapter[E] + +def typeAdapterOf(concreteType: RType): TypeAdapter[_] = ??? + +@main def test() = { + // https://github.com/gzoller/scalajack/blob/4a29366e28fbd594d7c21b4eb969ca14626ac0d1/core/src/main/scala/co.blocke.scalajack/typeadapter/TupleTypeAdapter.scala#L21-L30 + val seq = List.empty[RType] + seq map { f => + typeAdapterOf(f) match { + case ota: OptionTypeAdapter[_] => ota.copy(nullIsNone = true) + case jota: JavaOptionalTypeAdapter[_] => jota.copy(nullIsNone = true) + case other => other + } + } +} + +// 15154 \ No newline at end of file