de.sciss.lucre.expr.graph.impl

Type members

Classlikes

abstract class AbstractCtxCellView[T <: Txn[T], A](attr: Attr[T], key: String) extends CellView[T, Option[A]]
abstract class AbstractRand[T <: Txn[T], A](zero: A) extends IChangeGeneratorEvent[T, A] with IExpr[T, A] with IActionImpl[T] with Caching

Base for expanded Rand, Rand2, RangeRand

Base for expanded Rand, Rand2, RangeRand

abstract class BinaryMappedObjIExpr[T <: Txn[T], P <: ([~ <: Txn[~]] =>> Obj[~]), O <: Obj { type Peer = [~ <: Txn[~]] =>> P[~]; }, C, A](in: IExpr[T, O], b: IExpr[T, C], tx0: T)(implicit val targets: ITargets[T]) extends IExpr[T, A] with IChangeGeneratorEvent[T, A] with Caching

Mapping expression on an Ex[Obj] and one additional Ex argument. Since Obj.peer is an option, it must work also in the case that the peer is not present.

Mapping expression on an Ex[Obj] and one additional Ex argument. Since Obj.peer is an option, it must work also in the case that the peer is not present.

final class ExpandedAttrSet[T <: Txn[T], A](attrView: Var[T, Option[A]], value: IExpr[T, A]) extends IActionImpl[T]
final class ExpandedAttrSetIn[T <: Txn[T], A](in: IExpr[T, Obj], key: String, value: IExpr[T, A])(implicit bridge: Bridge[A], context: Context[T]) extends IActionImpl[T]
final class ExpandedAttrUpdate[T <: Txn[T], A](source: IExpr[T, A], attrView: Var[T, Option[A]], tx0: T) extends Disposable[T]
final class ExpandedAttrUpdateIn[T <: Txn[T], A](in: IExpr[T, Obj], key: String, value: IExpr[T, A], tx0: T)(implicit bridge: Bridge[A], context: Context[T]) extends Disposable[T]
final class ExpandedAttrUpdateOption[T <: Txn[T], A](source: IExpr[T, Option[A]], attrView: Var[T, Option[A]], tx0: T) extends Disposable[T]
final class ExpandedAttrUpdateOptionIn[T <: Txn[T], A](in: IExpr[T, Obj], key: String, value: IExpr[T, Option[A]], tx0: T)(implicit bridge: Bridge[A], context: Context[T]) extends Disposable[T]
final class ExpandedFlatMapOption[T <: Txn[T], A, B](in: IExpr[T, Option[A]], it: Expanded[T, A], fun: Ex[Option[B]], tx0: T)(implicit targets: ITargets[T], ctx: Context[T]) extends ExpandedMapOptionLike[T, A, Option[B], B]
final class ExpandedFlatMapSeq[T <: Txn[T], A, B](in: IExpr[T, Seq[A]], it: Expanded[T, A], fun: Ex[Seq[B]], tx0: T)(implicit targets: ITargets[T], ctx: Context[T]) extends ExpandedMapSeqLike[T, A, Seq[B], B]
final class ExpandedFlatMapSeqOption[T <: Txn[T], A, B](in: IExpr[T, Seq[A]], it: Expanded[T, A], fun: Ex[Option[B]], tx0: T)(implicit targets: ITargets[T], ctx: Context[T]) extends ExpandedMapSeqLike[T, A, Option[B], B]
final class ExpandedMapOption[T <: Txn[T], A, B](in: IExpr[T, Option[A]], it: Expanded[T, A], fun: Ex[B], tx0: T)(implicit targets: ITargets[T], ctx: Context[T]) extends ExpandedMapOptionLike[T, A, B, B]
final class ExpandedMapOptionAct[T <: Txn[T], A](in: IExpr[T, Option[A]], it: Expanded[T, A], fun: Act)(implicit val targets: ITargets[T], ctx: Context[T]) extends Option[T] with IActionImpl[T]
abstract class ExpandedMapOptionLike[T <: Txn[T], A, P, B](in: IExpr[T, Option[A]], it: Expanded[T, A], fun: Ex[P], tx0: T)(implicit targets: ITargets[T], ctx: Context[T]) extends ExpandedMapSeqOrOption[T, A, Option, P, Option[B]]
final class ExpandedMapSeq[T <: Txn[T], A, B](in: IExpr[T, Seq[A]], it: Expanded[T, A], fun: Ex[B], tx0: T)(implicit targets: ITargets[T], ctx: Context[T]) extends ExpandedMapSeqLike[T, A, B, B]
final class ExpandedMapSeqAct[T <: Txn[T], A](in: IExpr[T, Seq[A]], it: Expanded[T, A], fun: Act)(implicit val targets: ITargets[T], ctx: Context[T]) extends IAction[T] with IActionImpl[T]
abstract class ExpandedMapSeqIn[T <: Txn[T], A, P, Out](in: IExpr[T, Seq[A]], it: Expanded[T, A], fun: Ex[P], tx0: T)(implicit targets: ITargets[T], ctx: Context[T]) extends ExpandedMapSeqOrOption[T, A, Seq, P, Out]
abstract class ExpandedMapSeqLike[T <: Txn[T], A, P, B](in: IExpr[T, Seq[A]], it: Expanded[T, A], fun: Ex[P], tx0: T)(implicit targets: ITargets[T], ctx: Context[T]) extends ExpandedMapSeqIn[T, A, P, Seq[B]]
abstract class ExpandedMapSeqOrOption[T <: Txn[T], A, In[_], P, Out](in: IExpr[T, In[A]], it: Expanded[T, A], fun: Ex[P], tx0: T)(implicit val targets: ITargets[T], ctx: Context[T]) extends IExpr[T, Out] with IChangeEventImpl[T, Out] with Caching
final class ExpandedObjAttr[T <: Txn[T], A](obj: IExpr[T, Obj], key: String, tx0: T)(implicit val targets: ITargets[T], bridge: Bridge[A], context: Context[T]) extends IExpr[T, Option[A]] with IChangeGeneratorEvent[T, Option[A]] with Caching
abstract class ExpandedObjMakeImpl[T <: Txn[T], A](implicit val targets: ITargets[T]) extends IExpr[T, A] with IAction[T] with IChangeGeneratorEvent[T, A] with ITriggerConsumer[T, A] with Caching

Building block for expanded object's with Obj.Make functionality.

Building block for expanded object's with Obj.Make functionality.

abstract class MappedIExpr[T <: Exec[T], A1, A](in: IExpr[T, A1], tx0: T)(implicit val targets: ITargets[T]) extends IExpr[T, A] with IChangeEventImpl[T, A]
abstract class ObjCellViewVarImpl[T <: Txn[T], Dur <: ([~ <: Txn[~]] =>> Obj[~]), In <: Obj { type Peer <: ([~ <: Txn[~]] =>> Dur[~]); }](h: Source[T, Obj[T]], key: String)(implicit ct: ClassTag[Dur[T]], context: Context[T]) extends Var[T, Option[In]]
abstract class ObjImplBase[In <: Txn[In], Repr <: ([~ <: Txn[~]] =>> Obj[~])](in: Source[In, Repr[In]], system: Sys) extends Obj
final class StmObjAttrMapCellView[T <: Txn[T]](attr0: AttrMap[T], key: String, tx0: T)(implicit context: Context[T]) extends CellView[T, Option[Obj[T]]]

A CellView[T, Option[LObj[T]] built from an LObj.attr.

A CellView[T, Option[LObj[T]] built from an LObj.attr.

This is very similar to StmObjCtxCellView, which is built for a context attribute map, but the two classes have to be distinguished because LObj.AttrMap must be put into a handle, and because this forms a special case when used instead an LObj expression.

Depending on the kind of context passed, this will transparently install event reactors or simply register the events used in the expression program.

final class StmObjCtxCellView[T <: Txn[T]](attr: Attr[T], key: String) extends AbstractCtxCellView[T, Obj[T]]

A CellView[T, Option[LObj[T]] built from a Context.

A CellView[T, Option[LObj[T]] built from a Context.

This is very similar to StmObjAttrMapCellView, which is built for the attribute map of a lucre.Obj instead of a context, but the two classes have to be distinguished because lucre.Obj.AttrMap must be put into a handle, and because there a special case exists when it used instead an LObj expression.

abstract class UnaryMappedObjIExpr[T <: Txn[T], P <: ([~ <: Txn[~]] =>> Obj[~]), O <: Obj { type Peer = [~ <: Txn[~]] =>> P[~]; }, A](in: IExpr[T, O], tx0: T)(implicit val targets: ITargets[T]) extends IExpr[T, A] with IChangeGeneratorEvent[T, A] with Caching

Mapping expression on an Ex[Obj]. Since Obj.peer is an option, it must work also in the case that the peer is not present.

Mapping expression on an Ex[Obj]. Since Obj.peer is an option, it must work also in the case that the peer is not present.