Перегрузка существующего метода `toInt`

Метод toInt в StringLike не принимает никаких аргументов и может выполнять синтаксический анализ только в десятичном формате. Поэтому для синтаксического анализа двоичного, шестнадцатеричного и т. Д. Нам нужно прибегнуть к Java Integer # parseInt (String s, int radix) .

Пытаясь исправить это положение дел, я попробовал следующее

implicit def strToToIntable(s: String) = new {
  def toInt(n: Int) = Integer.parseInt(s, n)
}

Однако

"101".toInt(2)

приводит к «впечатляющему сбою» компилятора REPL и также не работает в скомпилированном коде.

Есть ли какие-то ограничения на перегрузку существующих методов с использованием шаблона «обогатить мою библиотеку»?

7
задан 0__ 8 June 2013 в 12:03
поделиться