Kotlin value class + groovy

0

Cześć,

mam problem z użyciem Kotlinowej value class w testach napisanych w Groovym. Może macie jakieś pomysły jak sobie z tym poradzić?

Kotlin:

data class Container(val list: List<Name>) {
    val first: Name = list.first()
}

@JvmInline
value class Name(val raw: String)

Groovy:

new Container(['A', 'B'])
> class java.lang.String cannot be cast to class org.example.Name

Konstruktora nie mogę użyć:

new Container([new Name('A'), new Name('B')])
> Could not find matching constructor for: org.example.Name(String)

inb4 napisz testy w Kotlinie

1

Jedyna sposób, który na tą chwile widzę to mozolne wywoływanie syntetycznych metod
(dostaniesz je robiąc javap na pliku class, albo z idea odpalając decompile Kotlin to java (na plikach .class)
new Container([Name.box-impl('A'), Name.box-impl('B')])

1 użytkowników online, w tym zalogowanych: 0, gości: 1