Мне нужна библиотека выпуска для версии scala 2.12 и 2.13. Но это зависит от другой библиотеки, которая существует только для версии 2.12. Для 2.13 я написал свою реализацию для функции fast
:
2.12 код выглядит так:
import com.dongxiguo.fastring.Fastring.Implicits._ //2.12 only
object Lib {
val a = fast"hello world"
}
2.13 код выглядит так:
import mycompat.Implicits._ //2.13 only
object Lib {
val a = fast"hello world" //my implementation
}
Так что отличие - только import ...
в нескольких файлах.
Я не могу понять, как организовать код для разных версий scala.
Lib
дважды — один раз в 2.12 (который будет использоватьcom.dongxiguo.fastring
) и один в 2.13 (который будет использоватьmycompat
). И при условии, что они имеют точно такие же имена и содержание, остальная часть приложения будет счастлива с ним... за исключением, вероятно, faststring в 2.12 и 2.13, которые будут разных типов. и он взорвется. - person J0HN   schedule 18.03.2020