Я пытаюсь выяснить, как использовать функцию в качестве члена класса, но не могу понять правильный синтаксис. Я получаю ошибку компиляции:
test.scala:11: error: missing arguments for method extra in class RichString;
follow this method with `_' if you want to treat it as a partially applied function
println("This is".extra);
Как сохранить extra
как функцию, определенную вне класса RichString
, и использовать ее для расширения класса String
?
Спасибо.
test.scala:
class RichString(a: String) {
def extra(a: String):String
}
def extra(a: String): String = {
return a+" Extra!";
}
implicit def string2Rich(s: String) = new RichString(s);
println("This is".extra);