Mam problem z funkcją implicit
, zaimportowaną z paczki.scala: niejawna konwersja nie działa
Mam klasę, która używa Regex, aby znaleźć coś w tekście. Chciałbym używać go jako:
val pattern = "some pattern here".r
pattern findSomethingIn some_text
Aby to zrobić, ja zdefiniować implicit
finction przekonwertować pattern
do owinięcia Wrapper
który zawiera findSomethingIn
funkcja
package mypackage {
class Wrapper (val pattern: Regex) {
def findSomethingIn(text: String): Something = ...
}
object Wrapper {
implicit def regex2Something(pat: Regex): Wrapper = new Wrapper(pat)
}
}
jeśli używać go jako
import mypackage._
Wrapper.regex2Something(pattern) findSomethingIn some_text
to działa. natomiast w przypadku korzystania
pattern findSomethingIn some_text // implicit should work here??
uzyskać
value findPriceIn is not a member of scala.util.amtching.Regex
więc niejawna konwersja nie działa tutaj ... Na czym polega problem?