RelationF is a pair of schema and a stream of instances of that schema. F - is the effect type.
- Companion:
- object
Type members
Inherited classlikes
case class Function2Expr[A, B, C](r1: RelExpr[A], r2: RelExpr[B], name: String, op: (A, B) => C) extends RelExpr[C]
- Inherited from:
- ExprClassicDsl
Value members
Concrete methods
NB: O(N + M ln M), N = rows.size, M = R2.rows.size
NB: O(N + M ln M), N = rows.size, M = R2.rows.size
transparent inline def crossProduct[R2 <: RelationF[F2], F2[x]](inline r2: R2)(using FlatMap[F2]): RelationF[F2] { type Schema <: AppendOtherSchema[Schema]; }
transparent inline def crossProductFrom[R1 <: RelationF[F2], F2[x]](inline r1: R1)(using FlatMap[F2]): RelationF[F2]
transparent inline def join[FK <: ForeignKeyId0, R2 <: RelationF[F2], F2[x]](inline fk: FK)(inline r2: R2)(using FlatMap[F2])(using FunctorFilter[F2]): RelationF[F2] { type Schema <: AppendOtherSchema[Schema]; }
transparent inline def prependCalcColumn[P <: RecordProperty0, F2[x]](inline p: P)(inline f: Row => P)(using FlatMap[F2]): RelationF[F] { type Schema <: SchemaCons[P, Schema]; }
transparent inline def projection[S2 <: RecordSchema, F2[x]](inline s2: S2)(using Functor[F2]): RelationF[F] { type Schema = s2; }
transparent inline def rename[T, P1 <: RecordProperty[T], P2 <: RecordProperty[T], F2[x]](inline p1: P1, p2: P2)(using Functor[F2]): RelationF[F2] { type Schema <: RecordSchema; }
transparent inline def replaceRows[F2[x]](inline f: Stream[F, Row] => Stream[F2, Row]): RelationF[F2] { type Schema = Schema; }
transparent inline def withFilter[F2[x]](inline predicate: Row => Boolean)(using FunctorFilter[F2]): RelationF[F] { type Schema = Schema; }
Inherited methods
Extensions
Inherited extensions
extension [T](r: RelExpr[T])
extension (r: RelExpr[String])