Я перехожу на Scala 2.13.
args: (Symbol, String)*
в шаблоне Play Twirl выдает следующее предупреждение:
Передача явного значения массива в метод Scala varargs устарела (начиная с версии 2.13.0) и приведет к созданию защитной копии; Используйте более эффективный не копирующий ArraySeq.unsafeWrapArray или явный вызов toIndexedSeq.
Вот весь шаблон:
@(action: play.api.mvc.Call, args: (Symbol, String)*)(body: => Html)
<form method="@action.method"
@toHtmlArgs(args.toMap)>
@body
</form>
Вот как эта функция называется:
@helper.formRelative(action = ..., Symbol("id") -> "assignForm", Symbol("class") -> "ui form") { ..body.. }
Поскольку я использую это во многих местах, есть ли способ решить эту проблему без изменения подписи?
Я пробовал разные вещи, например:
- добавить
toSeq
:@toHtmlArgs(args.toSeq.toMap)
- также при удалении
@toHtmlArgs(args.toMap)
появилось предупреждение.
toHtmlArgs
, а в коде, вызывающем шаблон. - person Yuval Itzchakov   schedule 23.09.2019