slick.lifted

package slick.lifted

Lifted embedding: Stable query api based on implicits and overloading lifting Scala code into Slick ASTs

Attributes

Members list

Concise view

Type members

Classlikes

abstract class AbstractTable[T](val tableTag: Tag, val schemaName: Option[String], val tableName: String) extends Rep[T]

The profile-independent superclass of all table row objects.

The profile-independent superclass of all table row objects.

Attributes

T

Row type for this table. Make sure it matches the type of your * projection.

Source:
AbstractTable.scala
Graph
Supertypes
trait Rep[T]
class Object
trait Matchable
class Any
Known subtypes
class Table[T]

Attributes

Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Shape.type
trait Aliases

Aliases for lifted embedding features. This trait can be mixed into aliasing objects which simplify the use of the lifted embedding.

Aliases for lifted embedding features. This trait can be mixed into aliasing objects which simplify the use of the lifted embedding.

Attributes

Source:
Aliases.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
final class AnyExtensionMethods(val n: Node) extends AnyVal

Extension methods for all columns and all primitive values that can be lifted to columns

Extension methods for all columns and all primitive values that can be lifted to columns

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
class AnyVal
trait Matchable
class Any
final class AnyOptionExtensionMethods[O <: Rep[_], P](val r: O) extends AnyVal

Extension methods for Options of single- and multi-column values

Extension methods for Options of single- and multi-column values

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
class AnyVal
trait Matchable
class Any
class AppliedCompiledFunction[PU, R <: Rep[_], RU](val param: PU, function: CompiledFunction[_, _, PU, R, RU], val profile: BasicProfile) extends RunnableCompiled[R, RU]

Attributes

Source:
Compiled.scala
Graph
Supertypes
trait RunnableCompiled[R, RU]
trait Compiled[R]
class Object
trait Matchable
class Any
final class BaseColumnExtensionMethods[P1](val c: Rep[P1]) extends AnyVal with ColumnExtensionMethods[P1, P1] with BaseExtensionMethods[P1]

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
trait ExtensionMethods[P1, P1]
class AnyVal
trait Matchable
class Any
trait BaseExtensionMethods[B1] extends ExtensionMethods[B1, B1]

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
trait ExtensionMethods[B1, B1]
class Any
Known subtypes
final class BaseJoinQuery[+E1, +E2, U1, U2, C[_], +B1, +B2](leftGen: TermSymbol, rightGen: TermSymbol, left: Node, right: Node, jt: JoinType, base: ShapedValue[_ <: (E1, E2), (U1, U2)], b1: B1, b2: B2) extends WrappingQuery[(E1, E2), (U1, U2), C]

Attributes

Source:
Query.scala
Graph
Supertypes
class WrappingQuery[(E1, E2), (U1, U2), C]
class Query[(E1, E2), (U1, U2), C]
trait QueryBase[C[(U1, U2)]]
trait Rep[C[(U1, U2)]]
class Object
trait Matchable
class Any
final class BaseNumericColumnExtensionMethods[P1](val c: Rep[P1]) extends AnyVal with NumericColumnExtensionMethods[P1, P1] with BaseExtensionMethods[P1]

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
trait ExtensionMethods[P1, P1]
class AnyVal
trait Matchable
class Any
trait BaseTag extends Tag

A Tag marking the base table instance itself

A Tag marking the base table instance itself

Attributes

Source:
AbstractTable.scala
Graph
Supertypes
trait Tag
class Object
trait Matchable
class Any
final class BooleanColumnExtensionMethods[P1](val c: Rep[P1]) extends AnyVal with ExtensionMethods[Boolean, P1]

Extension methods for Rep[Boolean] and Rep[Option[Boolean]]

Extension methods for Rep[Boolean] and Rep[Option[Boolean]]

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
trait ExtensionMethods[Boolean, P1]
class AnyVal
trait Matchable
class Any
trait CanBeQueryCondition[-T] extends T => Rep[_]

A typeclass for types that can be used as predicates in filter calls.

A typeclass for types that can be used as predicates in filter calls.

Attributes

Companion:
object
Source:
Query.scala
Graph
Supertypes
trait T => Rep[_]
class Object
trait Matchable
class Any

Attributes

Companion:
trait
Source:
Query.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
object Case

Case provides a DSL for conditional statements in the query language. An arbitrary number of If...Then expressions can be chained, optionally followed by Else, e.g.:

Case provides a DSL for conditional statements in the query language. An arbitrary number of If...Then expressions can be chained, optionally followed by Else, e.g.:

 Case If u.id < 3 Then "low" If u.id < 6 Then "medium" Else "high"

All result expressions have to be of compatible type (modulo nullability). If at least one of them is an Option type or the Else branch is missing, the result is also an Option.

Attributes

Source:
Case.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Case.type
class CaseClassShape[P <: Product, LiftedTuple, LiftedCaseClass <: P, PlainTuple, PlainCaseClass <: P](mapLifted: LiftedTuple => LiftedCaseClass, mapPlain: PlainTuple => PlainCaseClass)(implicit columnShapes: Shape[FlatShapeLevel, LiftedTuple, PlainTuple, LiftedTuple], classTag: ClassTag[PlainCaseClass]) extends MappedScalaProductShape[FlatShapeLevel, P, LiftedCaseClass, PlainCaseClass, LiftedCaseClass]

A generic case class shape that can be used to lift a case class of plain Scala types to a case class of lifted types. This allows the type to be used as a record type (like tuples and HLists) in the Lifted Embedding.

A generic case class shape that can be used to lift a case class of plain Scala types to a case class of lifted types. This allows the type to be used as a record type (like tuples and HLists) in the Lifted Embedding.

Example:

 case class C(a: Int, b: Option[String])
 case class LiftedC(a: Column[Int], b: Column[Option[String]])
 implicit object cShape extends CaseClassShape(LiftedC.tupled, C.tupled)

Attributes

Source:
Shape.scala
Graph
Supertypes
class MappedScalaProductShape[FlatShapeLevel, P, LiftedCaseClass, PlainCaseClass, LiftedCaseClass]
class MappedProductShape[FlatShapeLevel, P, LiftedCaseClass, PlainCaseClass, LiftedCaseClass]
class ProductNodeShape[FlatShapeLevel, P, LiftedCaseClass, PlainCaseClass, LiftedCaseClass]
class Shape[FlatShapeLevel, LiftedCaseClass, PlainCaseClass, LiftedCaseClass]
class Object
trait Matchable
class Any
trait ColumnExtensionMethods[B1, P1] extends ExtensionMethods[B1, P1]

Extension methods for all columns

Extension methods for all columns

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
trait ExtensionMethods[B1, P1]
class Any
Known subtypes
case class ColumnOrdered[T](column: Rep[T], ord: Ordering) extends Ordered

A Column with an associated Ordering.

A Column with an associated Ordering.

Attributes

Source:
Ordered.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Ordered
class Object
trait Matchable
class Any

ShapeLevel that only allows records of individual columns. This level is used for parameters of compiled queries.

ShapeLevel that only allows records of individual columns. This level is used for parameters of compiled queries.

Attributes

Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any
trait Compilable[T, C <: Compiled[T]]

Typeclass for types that can be contained in a Compiled container. This includes all Executable types as well as functions (of any arity) from flat, fully packed parameter types to an Executable result type.

Typeclass for types that can be contained in a Compiled container. This includes all Executable types as well as functions (of any arity) from flat, fully packed parameter types to an Executable result type.

Attributes

Companion:
object
Source:
Compiled.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion:
trait
Source:
Compiled.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Source:
CompilableFunctions.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Compilable.type

Attributes

Source:
Compiled.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
sealed trait Compiled[T]

A possibly parameterized query that will be cached for repeated efficient execution without having to recompile it every time. The compiled state is computed on demand the first time a Cached value is executed. It is always tied to a specific profile.

A possibly parameterized query that will be cached for repeated efficient execution without having to recompile it every time. The compiled state is computed on demand the first time a Cached value is executed. It is always tied to a specific profile.

Cached forms a limited monad which ensures that it can only contain values that are Compilable.

Attributes

Companion:
object
Source:
Compiled.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class CompiledFunction[F, PT, PU, R, RU]
trait RunnableCompiled[R, RU]
class AppliedCompiledFunction[PU, R, RU]
class CompiledExecutable[R, RU]
trait StreamableCompiled[R, RU, EU]
object Compiled

Attributes

Companion:
trait
Source:
Compiled.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
abstract class CompiledExecutable[R, RU](val extract: R, val profile: BasicProfile) extends RunnableCompiled[R, RU] with CompilersMixin

Attributes

Source:
Compiled.scala
Graph
Supertypes
trait RunnableCompiled[R, RU]
trait Compiled[R]
class Object
trait Matchable
class Any
Known subtypes
class CompiledFunction[F, PT, PU, R <: Rep[_], RU](val extract: F, val tuple: F => PT => R, val pShape: Shape[ColumnsShapeLevel, PU, PU, PT], val profile: BasicProfile) extends Compiled[F] with CompilersMixin

Attributes

Source:
Compiled.scala
Graph
Supertypes
trait Compiled[F]
class Object
trait Matchable
class Any
abstract class CompiledStreamingExecutable[R, RU, EU](extract: R, profile: BasicProfile) extends CompiledExecutable[R, RU] with StreamableCompiled[R, RU, EU]

Attributes

Source:
Compiled.scala
Graph
Supertypes
trait StreamableCompiled[R, RU, EU]
class CompiledExecutable[R, RU]
trait RunnableCompiled[R, RU]
trait Compiled[R]
class Object
trait Matchable
class Any

Attributes

Source:
Compiled.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class CompiledExecutable[R, RU]
class CompiledFunction[F, PT, PU, R, RU]
Self type
class ConstColumn[T](val toNode: Node)(implicit evidence$1: TypedType[T]) extends TypedRep[T]

A scalar value that is known at the client side at the time a query is executed. This is either a constant value (LiteralColumn) or a scalar parameter.

A scalar value that is known at the client side at the time a query is executed. This is either a constant value (LiteralColumn) or a scalar parameter.

Attributes

Source:
Rep.scala
Graph
Supertypes
class TypedRep[T]
trait Rep[T]
class Object
trait Matchable
class Any
Known subtypes
class LiteralColumn[T]

Attributes

Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Shape.type

Marker trait for foreign key and primary key constraints.

Marker trait for foreign key and primary key constraints.

Attributes

Source:
Constraint.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class ForeignKeyQuery[E, U]
trait Executable[T, TU]

Typeclass for types that can be executed as queries. This encompasses collection-valued (Query[_, _, _[_] ]), scalar and record types.

Typeclass for types that can be executed as queries. This encompasses collection-valued (Query[_, _, _[_] ]), scalar and record types.

Attributes

Companion:
object
Source:
Compiled.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait StreamingExecutable[T, TU, EU]
object Executable

Attributes

Companion:
trait
Source:
Compiled.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait ExtensionMethods[B1, P1]

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
class Any
Known subtypes

ShapeLevel that does not allow nested collections. This is the standard level for executable queries.

ShapeLevel that does not allow nested collections. This is the standard level for executable queries.

Attributes

Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
final class ForeignKey(val name: String, val sourceTable: Node, val onUpdate: ForeignKeyAction, val onDelete: ForeignKeyAction, val sourceColumns: Any, val targetColumns: Any => Any, val linearizedSourceColumns: IndexedSeq[Node], val linearizedTargetColumns: IndexedSeq[Node], val linearizedTargetColumnsForOriginalTargetTable: IndexedSeq[Node], val targetTable: TableNode, val columnsShape: Shape[_ <: FlatShapeLevel, _, _, _])

Represents a foreign key. Objects of this type are used internally by Slick. At the user level you generally see ForeignKeyQuery objects instead.

Represents a foreign key. Objects of this type are used internally by Slick. At the user level you generally see ForeignKeyQuery objects instead.

Attributes

Companion:
object
Source:
Constraint.scala
Graph
Supertypes
class Object
trait Matchable
class Any
object ForeignKey

Attributes

Companion:
class
Source:
Constraint.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
class ForeignKeyQuery[E <: AbstractTable[_], U](nodeDelegate: Node, base: ShapedValue[_ <: E, U], val fks: IndexedSeq[ForeignKey], targetBaseQuery: Query[E, U, Seq], generator: AnonSymbol, aliasedValue: E) extends WrappingQuery[E, U, Seq] with Constraint

A query that selects data linked by a foreign key.

A query that selects data linked by a foreign key.

Attributes

Source:
Constraint.scala
Graph
Supertypes
class WrappingQuery[E, U, Seq]
class Query[E, U, Seq]
trait QueryBase[Seq[U]]
trait Rep[Seq[U]]
class Object
trait Matchable
class Any

Utility methods for internal use in the lifted embedding

Utility methods for internal use in the lifted embedding

Attributes

Companion:
object
Source:
FunctionSymbolExtensionMethods.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion:
class
Source:
FunctionSymbolExtensionMethods.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
object Functions

Contains stand-alone database functions for use in queries. Functions which operate on columns are generally added as extension methods to the appropriate column types instead.

Contains stand-alone database functions for use in queries. Functions which operate on columns are generally added as extension methods to the appropriate column types instead.

Attributes

Source:
Functions.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
class Index(val name: String, val table: AbstractTable[_], val on: IndexedSeq[Node], val unique: Boolean)

An index (or foreign key constraint with an implicit index).

An index (or foreign key constraint with an implicit index).

Attributes

Source:
Constraint.scala
Graph
Supertypes
class Object
trait Matchable
class Any
final case class LiteralColumn[T](value: T)(implicit tt: TypedType[T]) extends ConstColumn[T]

A column with a constant value which is inserted into an SQL statement as a literal.

A column with a constant value which is inserted into an SQL statement as a literal.

Attributes

Source:
Rep.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class ConstColumn[T]
class TypedRep[T]
trait Rep[T]
class Object
trait Matchable
class Any
abstract class MappedProductShape[Level <: ShapeLevel, C, M <: C, U <: C, P <: C] extends ProductNodeShape[Level, C, M, U, P]

Base class for ProductNodeShapes with a type mapping

Base class for ProductNodeShapes with a type mapping

Attributes

Source:
Shape.scala
Graph
Supertypes
class ProductNodeShape[Level, C, M, U, P]
class Shape[Level, M, U, P]
class Object
trait Matchable
class Any
Known subtypes
class MappedScalaProductShape[Level, C, M, U, P]
class HListShape[Level, M, U, P]
class CaseClassShape[P, LiftedTuple, LiftedCaseClass, PlainTuple, PlainCaseClass]
class ProductClassShape[E, C]
class MappedProjection[T, P](child: Node, mapper: Mapper, classTag: ClassTag[T]) extends Rep[T]

Attributes

Source:
Shape.scala
Graph
Supertypes
trait Rep[T]
class Object
trait Matchable
class Any
abstract class MappedScalaProductShape[Level <: ShapeLevel, C <: Product, M <: C, U <: C, P <: C](implicit val classTag: ClassTag[U]) extends MappedProductShape[Level, C, M, U, P]

Base class for ProductNodeShapes with a type mapping to a type that extends scala.Product

Base class for ProductNodeShapes with a type mapping to a type that extends scala.Product

Attributes

Source:
Shape.scala
Graph
Supertypes
class MappedProductShape[Level, C, M, U, P]
class ProductNodeShape[Level, C, M, U, P]
class Shape[Level, M, U, P]
class Object
trait Matchable
class Any
Known subtypes
class HListShape[Level, M, U, P]
class CaseClassShape[P, LiftedTuple, LiftedCaseClass, PlainTuple, PlainCaseClass]
class ProductClassShape[E, C]

ShapeLevel that allows nested collections.

ShapeLevel that allows nested collections.

Attributes

Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait NumericColumnExtensionMethods[B1, P1] extends ExtensionMethods[B1, P1]

Extension methods for numeric columns

Extension methods for numeric columns

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
trait ExtensionMethods[B1, P1]
class Any
Known subtypes
final class OptionColumnExtensionMethods[B1](val c: Rep[Option[B1]]) extends AnyVal with ColumnExtensionMethods[B1, Option[B1]] with OptionExtensionMethods[B1]

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
trait ColumnExtensionMethods[B1, Option[B1]]
trait ExtensionMethods[B1, Option[B1]]
class AnyVal
trait Matchable
class Any
trait OptionExtensionMethods[B1] extends ExtensionMethods[B1, Option[B1]]

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
trait ExtensionMethods[B1, Option[B1]]
class Any
Known subtypes
sealed trait OptionLift[M, O]

A typeclass that lifts a mixed type to the packed Option type.

A typeclass that lifts a mixed type to the packed Option type.

Attributes

Companion:
object
Source:
OptionMapper.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion:
trait
Source:
OptionMapper.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Source:
OptionMapper.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object OptionLift.type
trait OptionMapper[BR, R] extends Rep[BR] => Rep[R]

Attributes

Source:
OptionMapper.scala
Graph
Supertypes
trait Rep[BR] => Rep[R]
class Object
trait Matchable
class Any
Known subtypes
trait OptionMapper2[B1, B2, BR, P1, P2, R]
trait OptionMapper3[B1, B2, B3, BR, P1, P2, P3, R]
sealed trait OptionMapper2[B1, B2, BR, P1, P2, R] extends OptionMapper[BR, R]

Attributes

Companion:
object
Source:
OptionMapper.scala
Graph
Supertypes
trait OptionMapper[BR, R]
trait Rep[BR] => Rep[R]
class Object
trait Matchable
class Any

Attributes

Companion:
trait
Source:
OptionMapper.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
sealed trait OptionMapper3[B1, B2, B3, BR, P1, P2, P3, R] extends OptionMapper[BR, R]

Attributes

Companion:
object
Source:
OptionMapper.scala
Graph
Supertypes
trait OptionMapper[BR, R]
trait Rep[BR] => Rep[R]
class Object
trait Matchable
class Any

Attributes

Companion:
trait
Source:
OptionMapper.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Source:
OptionMapper.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final class OptionNumericColumnExtensionMethods[B1](val c: Rep[Option[B1]]) extends AnyVal with NumericColumnExtensionMethods[B1, Option[B1]] with OptionExtensionMethods[B1]

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
trait NumericColumnExtensionMethods[B1, Option[B1]]
trait ExtensionMethods[B1, Option[B1]]
class AnyVal
trait Matchable
class Any

Attributes

Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Ordered(val columns: IndexedSeq[(Node, Ordering)])

Attributes

Companion:
object
Source:
Ordered.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class ColumnOrdered[T]
object Ordered

Attributes

Companion:
class
Source:
Ordered.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Ordered.type
final class Parameters[PU, PP](pShape: Shape[ColumnsShapeLevel, PU, PU, _])

Attributes

Companion:
object
Source:
Compiled.scala
Graph
Supertypes
class Object
trait Matchable
class Any
object Parameters

Attributes

Companion:
class
Source:
Compiled.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
case class PrimaryKey(name: String, columns: IndexedSeq[Node]) extends Constraint

An explicit primary key. Simple primary keys can also be represented by O.PrimaryKey column options instead.

An explicit primary key. Simple primary keys can also be represented by O.PrimaryKey column options instead.

Attributes

Source:
Constraint.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
class ProductClassShape[E <: Product, C <: Product](val shapes: Seq[Shape[_ <: ShapeLevel, _, _, _]], mapLifted: Seq[Any] => C, mapPlain: Seq[Any] => E)(implicit classTag: ClassTag[E]) extends MappedScalaProductShape[FlatShapeLevel, Product, C, E, C]

A generic Product class shape that can be used to lift a class of plain Scala types to a class of lifted types. This allows the type to be used as a record type (like tuples and HLists) in the Lifted Embedding.

A generic Product class shape that can be used to lift a class of plain Scala types to a class of lifted types. This allows the type to be used as a record type (like tuples and HLists) in the Lifted Embedding.

This can help with mapping tables >22 columns to classes, especially when using code generation. This can be used for Scala 2.11 case classes >22 fields.

Example:

 def columnShape[T](implicit s: Shape[FlatShapeLevel, Column[T], T, Column[T]]) = s
 class C(val a: Int, val b: Option[String]) extends Product{
   def canEqual(that: Any): Boolean = that.isInstanceOf[C]
   def productArity: Int = 2
   def productElement(n: Int): Any = Seq(a, b)(n)
 }
 class LiftedC(val a: Column[Int], val b: Column[Option[String]]) extends Product{
   def canEqual(that: Any): Boolean = that.isInstanceOf[LiftedC]
   def productArity: Int = 2
   def productElement(n: Int): Any = Seq(a, b)(n)
 }
 implicit object cShape extends ProductClassShape(
   Seq(columnShape[Int], columnShape[Option[String]]),
   seq => new LiftedC(seq(0).asInstanceOf[Column[Int]], seq(1).asInstanceOf[Column[Option[String]]]),
   seq => new C(seq(0).asInstanceOf[Int], seq(1).asInstanceOf[Option[String]])
 )

Attributes

Source:
Shape.scala
Graph
Supertypes
class MappedScalaProductShape[FlatShapeLevel, Product, C, E, C]
class MappedProductShape[FlatShapeLevel, Product, C, E, C]
class ProductNodeShape[FlatShapeLevel, Product, C, E, C]
class Shape[FlatShapeLevel, C, E, C]
class Object
trait Matchable
class Any
abstract class ProductNodeShape[Level <: ShapeLevel, C, M <: C, U <: C, P <: C] extends Shape[Level, M, U, P]

Base class for Shapes of record values which are represented by ProductNodes in the AST.

Base class for Shapes of record values which are represented by ProductNodes in the AST.

Attributes

C

The supertype for the record values.

M

The mixed type of the Shape (a subtype of C).

P

The fully packed type of the Shape (a subtype of C).

U

The unpacked type of the Shape (a subtype of C).

Source:
Shape.scala
Graph
Supertypes
class Shape[Level, M, U, P]
class Object
trait Matchable
class Any
Known subtypes
class MappedProductShape[Level, C, M, U, P]
class MappedScalaProductShape[Level, C, M, U, P]
class HListShape[Level, M, U, P]
class CaseClassShape[P, LiftedTuple, LiftedCaseClass, PlainTuple, PlainCaseClass]
class ProductClassShape[E, C]
class TupleShape[Level, M, U, P]
trait ProvenShape[U]

A limited version of ShapedValue which can be constructed for every type that has a valid shape. We use it to enforce that a table's * projection has a valid shape. A ProvenShape has itself a Shape so it can be used in place of the value that it wraps for purposes of packing and unpacking.

A limited version of ShapedValue which can be constructed for every type that has a valid shape. We use it to enforce that a table's * projection has a valid shape. A ProvenShape has itself a Shape so it can be used in place of the value that it wraps for purposes of packing and unpacking.

Attributes

Companion:
object
Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion:
trait
Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
abstract class Query[+E, U, C[_]] extends QueryBase[C[U]]

An instance of Query represents a query or view, i.e. a computation of a collection type (Rep[Seq[T]]). It is parameterized with both, the mixed type (the type of values you see e.g. when you call map()) and the unpacked type (the type of values that you get back when you run the query).

An instance of Query represents a query or view, i.e. a computation of a collection type (Rep[Seq[T]]). It is parameterized with both, the mixed type (the type of values you see e.g. when you call map()) and the unpacked type (the type of values that you get back when you run the query).

Additional extension methods for queries containing a single column are defined in slick.lifted.SingleColumnQueryExtensionMethods.

Attributes

Companion:
object
Source:
Query.scala
Graph
Supertypes
trait QueryBase[C[U]]
trait Rep[C[U]]
class Object
trait Matchable
class Any
Known subtypes
class TableQuery[E]
class WrappingQuery[E, U, C]
class BaseJoinQuery[E1, E2, U1, U2, C, B1, B2]
class ForeignKeyQuery[E, U]
Self type
Query[E, U, C]
object Query

The companion object for Query contains factory methods for creating queries.

The companion object for Query contains factory methods for creating queries.

Attributes

Companion:
class
Source:
Query.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Query.type
sealed trait QueryBase[T] extends Rep[T]

Attributes

Source:
Query.scala
Graph
Supertypes
trait Rep[T]
class Object
trait Matchable
class Any
Known subtypes
class Query[E, U, C]
class TableQuery[E]
class WrappingQuery[E, U, C]
class BaseJoinQuery[E1, E2, U1, U2, C, B1, B2]
class ForeignKeyQuery[E, U]
abstract class RefTag(val path: Node) extends Tag

A Tag for table instances that represent a Node

A Tag for table instances that represent a Node

Attributes

Source:
AbstractTable.scala
Graph
Supertypes
trait Tag
class Object
trait Matchable
class Any
trait Rep[T]

Common base trait for all lifted values, including columns.

Common base trait for all lifted values, including columns.

All column operations are added with extension methods that depend on the type inside the Rep. These are defined in:

A Rep[T : TypedType] is always Typed, so that the TypedType can be retrieved directly from the Rep value.

Attributes

Companion:
object
Source:
Rep.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AbstractTable[T]
class Table[T]
class MappedProjection[T, P]
trait QueryBase[T]
class Query[E, U, C]
class TableQuery[E]
class WrappingQuery[E, U, C]
class BaseJoinQuery[E1, E2, U1, U2, C, B1, B2]
class ForeignKeyQuery[E, U]
class TypedRep[T]
class TypedCase[B, T]
class ConstColumn[T]
class LiteralColumn[T]
class UntypedRep[T]
class RepOption[T]
class ShapedValue[T, U]
object Rep

Attributes

Companion:
trait
Source:
Rep.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Rep.type
final case class RepOption[T](base: ShapedValue[_, _], toNode: Node) extends Rep[Option[T]]

Represents Rep[Option[T]] in all cases where T is not a column base type. This special representation is necessary so that a non-Option Rep value can be retrieved for encoding Option-based operations. This base value is of type T if T <: Rep[_], otherwise of type Rep[T].

Represents Rep[Option[T]] in all cases where T is not a column base type. This special representation is necessary so that a non-Option Rep value can be retrieved for encoding Option-based operations. This base value is of type T if T <: Rep[_], otherwise of type Rep[T].

Attributes

Source:
Rep.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Rep[Option[T]]
class Object
trait Matchable
class Any
object RepShape extends Shape[FlatShapeLevel, Rep[_], Any, Rep[_]]

Shape for Rep values (always fully packed)

Shape for Rep values (always fully packed)

Attributes

Source:
Shape.scala
Graph
Supertypes
class Shape[FlatShapeLevel, Rep[_], Any, Rep[_]]
class Object
trait Matchable
class Any
Self type

Attributes

Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait RunnableCompiled[R, RU] extends Compiled[R]

A compiled value that can be executed to obtain its result.

A compiled value that can be executed to obtain its result.

Attributes

Source:
Compiled.scala
Graph
Supertypes
trait Compiled[R]
class Object
trait Matchable
class Any
Known subtypes
class AppliedCompiledFunction[PU, R, RU]
class CompiledExecutable[R, RU]
trait StreamableCompiled[R, RU, EU]
abstract class Shape[Level <: ShapeLevel, -Mixed_, Unpacked_, Packed_]

A type class that encodes the unpacking Mixed => Unpacked of a Query[Mixed] to its result element type Unpacked and the packing to a fully packed type Packed, i.e. a type where everything which is not a transparent container is wrapped in a Column[_].

A type class that encodes the unpacking Mixed => Unpacked of a Query[Mixed] to its result element type Unpacked and the packing to a fully packed type Packed, i.e. a type where everything which is not a transparent container is wrapped in a Column[_].

=Example:=

  • Mixed: (Column[Int], Column[(Int, String)], (Int, Option[Double]))
  • Unpacked: (Int, (Int, String), (Int, Option[Double]))
  • Packed: (Column[Int], Column[(Int, String)], (Column[Int], Column[Option[Double]]))
  • Linearized: (Int, Int, String, Int, Option[Double])

Attributes

Companion:
object
Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class ProductNodeShape[Level, C, M, U, P]
class MappedProductShape[Level, C, M, U, P]
class MappedScalaProductShape[Level, C, M, U, P]
class HListShape[Level, M, U, P]
class CaseClassShape[P, LiftedTuple, LiftedCaseClass, PlainTuple, PlainCaseClass]
class ProductClassShape[E, C]
class TupleShape[Level, M, U, P]
object RepShape.type

Attributes

Companion:
class
Source:
Shape.scala
Graph
Supertypes
Self type
Shape.type

The level of a Shape, i.e. what kind of types it allows. Subtypes of this trait are used as a phantom type for Shape resolution. There are no instances of any ShapeLevel.

The level of a Shape, i.e. what kind of types it allows. Subtypes of this trait are used as a phantom type for Shape resolution. There are no instances of any ShapeLevel.

Attributes

Source:
Shape.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
case class ShapedValue[T, U](value: T, shape: Shape[_ <: FlatShapeLevel, T, U, _]) extends Rep[U]

A value together with its Shape

A value together with its Shape

Attributes

Companion:
object
Source:
ShapedValue.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Rep[U]
class Object
trait Matchable
class Any

Attributes

Companion:
class
Source:
ShapedValue.scala
Graph
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

A SimpleBinaryOperator gets translated to a binary operator call in SQL.

A SimpleBinaryOperator gets translated to a binary operator call in SQL.

Attributes

Companion:
object
Source:
SimpleFunction.scala
Graph
Supertypes
trait Node
trait Dumpable
class Object
trait Matchable
class Any

Attributes

Companion:
trait
Source:
SimpleFunction.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
trait SimpleExpression extends Node

A SimpleExpression allows arbitrary SQL code to be generated.

A SimpleExpression allows arbitrary SQL code to be generated.

Attributes

Companion:
object
Source:
SimpleFunction.scala
Graph
Supertypes
trait Node
trait Dumpable
class Object
trait Matchable
class Any

Attributes

Companion:
trait
Source:
SimpleFunction.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
trait SimpleFunction extends Node

A SimpleFunction gets translated to a plain function call or JDBC/ODBC scalar function {fn ...} call in SQL.

A SimpleFunction gets translated to a plain function call or JDBC/ODBC scalar function {fn ...} call in SQL.

Attributes

Companion:
object
Source:
SimpleFunction.scala
Graph
Supertypes
trait Node
trait Dumpable
class Object
trait Matchable
class Any

Attributes

Companion:
trait
Source:
SimpleFunction.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class SimpleLiteral(name: String)(buildType: Type) extends NullaryNode with SimplyTypedNode

A SimpleLiteral is inserted verbatim into a SQL query string. For the purpose of handling it in the query compiler it is assumed to be an expression of the specified type.

A SimpleLiteral is inserted verbatim into a SQL query string. For the purpose of handling it in the query compiler it is assumed to be an expression of the specified type.

Attributes

Companion:
object
Source:
SimpleFunction.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Node
trait Dumpable
class Object
trait Matchable
class Any

Attributes

Companion:
class
Source:
SimpleFunction.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final class SingleColumnQueryExtensionMethods[B1, P1, C[_]](val q: Query[Rep[P1], _, C]) extends AnyVal

Extension methods for Queries of a single column

Extension methods for Queries of a single column

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
class AnyVal
trait Matchable
class Any
trait StreamableCompiled[R, RU, EU] extends RunnableCompiled[R, RU]

A compiled value that can be executed to obtain its result as a stream of data.

A compiled value that can be executed to obtain its result as a stream of data.

Attributes

Source:
Compiled.scala
Graph
Supertypes
trait RunnableCompiled[R, RU]
trait Compiled[R]
class Object
trait Matchable
class Any
Known subtypes
trait StreamingExecutable[T, TU, EU] extends Executable[T, TU]

Typeclass for types that can be executed as streaming queries, i.e. only collection-valued (Query[_, _, _[_] ]) types. This is used as a phantom type for computing the required types. The actual value is always null.

Typeclass for types that can be executed as streaming queries, i.e. only collection-valued (Query[_, _, _[_] ]) types. This is used as a phantom type for computing the required types. The actual value is always null.

Attributes

Companion:
object
Source:
Compiled.scala
Graph
Supertypes
trait Executable[T, TU]
class Object
trait Matchable
class Any
Known subtypes
object StreamingExecutable extends StreamingExecutable[Rep[Any], Any, Any]

A prototype StreamingExecutable instance for Rep types.

A prototype StreamingExecutable instance for Rep types.

Attributes

Companion:
trait
Source:
Compiled.scala
Graph
Supertypes
trait StreamingExecutable[Rep[Any], Any, Any]
trait Executable[Rep[Any], Any]
class Object
trait Matchable
class Any
Self type
final class StringColumnExtensionMethods[P1](val c: Rep[P1]) extends AnyVal with ExtensionMethods[String, P1]

Extension methods for Rep[String] and Rep[Option[String]]

Extension methods for Rep[String] and Rep[Option[String]]

Attributes

Source:
ExtensionMethods.scala
Graph
Supertypes
trait ExtensionMethods[String, P1]
class AnyVal
trait Matchable
class Any
class TableQuery[E <: AbstractTable[_]](cons: Tag => E) extends Query[E, Extract[E], Seq]

Represents a database table. Profiles add extension methods to TableQuery for operations that can be performed on tables but not on arbitrary queries, e.g. getting the table DDL.

Represents a database table. Profiles add extension methods to TableQuery for operations that can be performed on tables but not on arbitrary queries, e.g. getting the table DDL.

Attributes

Companion:
object
Source:
TableQuery.scala
Graph
Supertypes
class Query[E, Extract[E], Seq]
trait QueryBase[Seq[Extract[E]]]
trait Rep[Seq[Extract[E]]]
class Object
trait Matchable
class Any
object TableQuery

Attributes

Companion:
class
Source:
TableQuery.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
sealed trait Tag

A Tag marks a specific row represented by an AbstractTable instance.

A Tag marks a specific row represented by an AbstractTable instance.

Attributes

Source:
AbstractTable.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait BaseTag
class RefTag
@FunctionalInterface
trait ToTuple[E, T] extends E => Option[T]

Attributes

Companion:
object
Source:
ShapedValue.scala
Graph
Supertypes
trait E => Option[T]
class Object
trait Matchable
class Any

Attributes

Companion:
trait
Source:
ShapedValue.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
ToTuple.type

Attributes

Source:
ShapedValue.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object ToTuple.type
final class TupleShape[Level <: ShapeLevel, M <: Product, U <: Product, P <: Product](val shapes: Shape[_ <: ShapeLevel, _, _, _]*) extends ProductNodeShape[Level, Product, M, U, P]

Shape for Scala tuples of all arities

Shape for Scala tuples of all arities

Attributes

Source:
Shape.scala
Graph
Supertypes
class ProductNodeShape[Level, Product, M, U, P]
class Shape[Level, M, U, P]
class Object
trait Matchable
class Any

Attributes

Source:
TupleShapeImplicits.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Shape.type
class WrappingQuery[+E, U, C[_]](val toNode: Node, val shaped: ShapedValue[_ <: E, U]) extends Query[E, U, C]

Attributes

Source:
Query.scala
Graph
Supertypes
class Query[E, U, C]
trait QueryBase[C[U]]
trait Rep[C[U]]
class Object
trait Matchable
class Any
Known subtypes
class BaseJoinQuery[E1, E2, U1, U2, C, B1, B2]
class ForeignKeyQuery[E, U]