diff -r aced4f0d1ad4 -r baa20f3b6cea src/Pure/Tools/sql.scala --- a/src/Pure/Tools/sql.scala Sun Sep 04 21:41:08 2016 +0200 +++ b/src/Pure/Tools/sql.scala Sun Sep 04 22:04:07 2016 +0200 @@ -125,7 +125,9 @@ /* tables */ - sealed case class Table(name: String, columns: List[Column[Any]]) + def table(name: String, columns: Column[Any]*): Table = new Table(name, columns.toList) + + class Table private[SQL](name: String, columns: List[Column[Any]]) { Library.duplicates(columns.map(_.name)) match { case Nil => @@ -145,5 +147,8 @@ def sql_drop(strict: Boolean): String = "DROP TABLE " + (if (strict) "" else " IF EXISTS ") + quote_ident(name) + + override def toString: String = + "TABLE " + quote_ident(name) + " " + columns.map(_.toString).mkString("(", ", ", ")") } }