У меня есть простой код
private def convertFieldsNames (fieldsNames: Array[String]): Array[String] =
fieldsNames.map(convertFieldName)
private def convertFieldName (fieldName: String): String = s"!!! $fieldName"
val res = convertFieldsNames(Array("123", "456"))
res.map(println)
, он прекрасно работает, но когда я добавляю функции преобразования типов, которые я буду использовать в других функциях
implicit def fromStringToEitherStringOrArray (str: String): Either[String, Array[String]] = Left(str)
implicit def fromArrayToEitherStringOrArray (arr: Array[String]): Either[String, Array[String]] = Right(arr)
, я получаюошибка в строке
fieldsNames.map(convertFieldName)
type mismatch;
found : String => String
required: Array[String] => ?
Я ожидал, что эти преобразования произойдут только в том случае, если необходимо преобразование в любое из значений, поэтому я не могу понять, почему эта ошибка всплывает в строке, где тип Either вообще отсутствует