diff --git a/library/lang/string/package.scala b/library/lang/string/package.scala index ba2e37e0a0bce18af77531047559302f913794b6..f09af7c6e5fe807389c479fe65af570309a5b16f 100644 --- a/library/lang/string/package.scala +++ b/library/lang/string/package.scala @@ -3,11 +3,22 @@ package leon.lang import leon.annotation._ +import leon.collection._ import scala.language.implicitConversions +import scala.collection.immutable.{List => ScalaList} + package object string { @ignore implicit def strToStr(s: java.lang.String): leon.lang.string.String = { - String(leon.collection.Nil()) + String(listToList(s.toList)) + } + + @ignore + def listToList[A](s: ScalaList[A]): List[A] = s match { + case h :: t => + Cons(h, listToList(t)) + case _ => + Nil[A]() } }