Relations

trait Relations[M[_]]
Companion:
object
class Object
trait Matchable
class Any

Type members

Classlikes

final class ConstrainSyntaxHelper[L <: HList, OS <: HList](con: Constraint[L, M])(implicit m: Aux[L, Order, OS])
final class EstablishMatchingSyntaxHelper[L <: HList, L0 >: L <: HList, C <: HList, OS <: HList](rel: Aux[L, L0], values: C)(implicit m: Aux[L0, Order, OS])
final class EstablishSyntaxHelper[L <: HList, L0 >: L <: HList, OS <: HList](rel: Aux[L, L0])(implicit m: Aux[L0, Order, OS])
final class RelateSyntaxHelper[L <: HList, OS <: HList](rel: Rel[L])(implicit m: Aux[L, Order, OS])

Value members

Abstract methods

def establishImpl[L <: HList, C <: HList, OrderL <: HList](rel: Rel[L], values: C, recipe: Recipe[L, C, M])(implicit L: MappedListBuilder[L], m: Aux[Projection, Order, OrderL], os: SummonHList[OrderL]): ContU[M, L]
def onPatternMatch[V <: HList](p: Pattern[V], a: Assignment[V])(h: V => M[Unit]): M[Unit]
def relateImpl[L <: HList, OrderL <: HList](rel: Rel[L], values: L)(implicit m: Aux[L, Order, OrderL], os: SummonHList[OrderL]): M[Unit]

Concrete methods

def constrain[L <: HList](con: Constraint[L, M])(implicit m: Mapped[L, Order]): ConstrainSyntaxHelper[L, Out]
def establish[L <: HList](rel: Rel[L])(implicit m: Mapped[Projection, Order]): EstablishSyntaxHelper[L, Projection, Out]
final def onPatternMatch[V <: HList](p: Pattern[V])(h: V => M[Unit]): M[Unit]
final def onPatternMatch[V <: HList](p: PartiallyAssignedPattern[V])(h: V => M[Unit]): M[Unit]
def relate[L <: HList](rel: Rel[L])(implicit m: Mapped[L, Order]): RelateSyntaxHelper[L, Out]

Implicits

Implicits

implicit def M: Monad[M]