Кто-то мне сказал, чтобы сделать функцию объекта-компаньона частной, импортировать объект-компаньон в класс и затем получить доступ к функции в классе.
Следующий код не работает в реплее.
Пример:
object Foo {
private def bar(i: Int): Boolean = i == 5
}
class Foo{
import Foo._
bar(0)
}
object Foo {
private def bar(i: Int): Boolean = i == 5
}
class Foo{
import Foo._
Foo.bar(0)
}
scala> object Foo {
| private def bar(i: Int): Boolean = i == 5
| }
defined object Foo
scala>
scala> class Foo{
| import Foo._
|
| bar(0)
| }
<console>:15: error: not found: value bar
bar(0)
^
scala>
scala> object Foo {
| private def bar(i: Int): Boolean = i == 5
| }
defined object Foo
scala>
scala> class Foo{
| import Foo._
|
| Foo.bar(0)
| }
<console>:15: error: method bar in object Foo cannot be accessed in object Foo
Foo.bar(0)
^