метод scala slick пока не могу понять
Я пытаюсь понять некоторые работы Slick и что для этого нужно.
Вот это пример:
package models
case class Bar(id: Option[Int] = None, name: String)
object Bars extends Table[Bar]("bar") {
def id = column[Int]("id", O.PrimaryKey, O.AutoInc)
// This is the primary key column
def name = column[String]("name")
// Every table needs a * projection with the same type as the table's type parameter
def * = id.? ~ name (Bar, Bar.unapply _)
}
Может ли кто-нибудь объяснить мне, чтос целью*
метод здесь, что это, Зачем
unapply
? и что такое проекция - метод~
возвращает экземпляр?Projection2