Re[9]: Kotlin - новый язык для JVM
От: avpavlov  
Дата: 21.07.11 08:40
Оценка:
M>Это на каком языке код? В Scala
M>
M>class Test {
M>    class Tree(val left : Tree, val right : Tree)

M>    implicit object TreeWrapper {
M>        def unapply(t : Tree) = Some(t.left, t.right)
M>    }

M>    def main(args: Array[String]) {
M>        val tr : Tree = null;

M>        tr match {
M>            case TreeWrapper(t1, t2) => println(t1, t2);
M>        }
M>    }
M>}
M>

M>прекрасно работает.


Сайберакс имеет ввиду что названия .left .right мы потеряли, и нужно вводить свои (t1,t2) или пользоваться анонимными ._1/._2

На самом деле нет ни одной причины не объявить Tree как case class. Так что на мой взгляд он просто привередничает
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.