BinOpFrame

Provides concrete implementations of binary operations for org.saddle.Frame; these instances provide implicit support for org.saddle.ops.NumericOps methods which are inherited by Frame.

class Object
trait Matchable
class Any
object Frame.type
object BinOps.type

Type members

Classlikes

final class FrFrEOp[OP <: ScalarOp, X, Y, A, B, C](opv: BinOp[OP, Vec[A], Vec[B], Vec[C]])(implicit evidence$2: ScalarTag[X], evidence$3: Order[X], evidence$4: ScalarTag[Y], evidence$5: Order[Y], evidence$6: ScalarTag[B], evidence$7: ScalarTag[C]) extends BinOp[OP, Frame[X, Y, A], Frame[X, Y, B], Frame[X, Y, C]]
final class FrScEOp[OP <: ScalarOp, X, Y, A, B, C](opv: BinOp[OP, Vec[A], B, Vec[C]])(implicit evidence$1: ScalarTag[C]) extends BinOp[OP, Frame[X, Y, A], B, Frame[X, Y, C]]

Implicits

Implicits

implicit def FrFrEOpBBB[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Boolean], Vec[Boolean], Vec[Boolean]]): FrFrEOp[Op, X, Y, Boolean, Boolean, Boolean]
implicit def FrFrEOpDDB[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Double], Vec[Double], Vec[Boolean]]): FrFrEOp[Op, X, Y, Double, Double, Boolean]
implicit def FrFrEOpDDD[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Double], Vec[Double], Vec[Double]]): FrFrEOp[Op, X, Y, Double, Double, Double]
implicit def FrFrEOpDIB[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Double], Vec[Int], Vec[Boolean]]): FrFrEOp[Op, X, Y, Double, Int, Boolean]
implicit def FrFrEOpDID[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Double], Vec[Int], Vec[Double]]): FrFrEOp[Op, X, Y, Double, Int, Double]
implicit def FrFrEOpDLB[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Double], Vec[Long], Vec[Boolean]]): FrFrEOp[Op, X, Y, Double, Long, Boolean]
implicit def FrFrEOpDLD[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Double], Vec[Long], Vec[Double]]): FrFrEOp[Op, X, Y, Double, Long, Double]
implicit def FrFrEOpIDB[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Int], Vec[Double], Vec[Boolean]]): FrFrEOp[Op, X, Y, Int, Double, Boolean]
implicit def FrFrEOpIDD[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Int], Vec[Double], Vec[Double]]): FrFrEOp[Op, X, Y, Int, Double, Double]
implicit def FrFrEOpIIB[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Int], Vec[Int], Vec[Boolean]]): FrFrEOp[Op, X, Y, Int, Int, Boolean]
implicit def FrFrEOpIII[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Int], Vec[Int], Vec[Int]]): FrFrEOp[Op, X, Y, Int, Int, Int]
implicit def FrFrEOpILB[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Int], Vec[Long], Vec[Boolean]]): FrFrEOp[Op, X, Y, Int, Long, Boolean]
implicit def FrFrEOpILL[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Int], Vec[Long], Vec[Long]]): FrFrEOp[Op, X, Y, Int, Long, Long]
implicit def FrFrEOpLDB[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Long], Vec[Double], Vec[Boolean]]): FrFrEOp[Op, X, Y, Long, Double, Boolean]
implicit def FrFrEOpLDD[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Long], Vec[Double], Vec[Double]]): FrFrEOp[Op, X, Y, Long, Double, Double]
implicit def FrFrEOpLIB[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Long], Vec[Int], Vec[Boolean]]): FrFrEOp[Op, X, Y, Long, Int, Boolean]
implicit def FrFrEOpLIL[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Long], Vec[Int], Vec[Long]]): FrFrEOp[Op, X, Y, Long, Int, Long]
implicit def FrFrEOpLLB[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Long], Vec[Long], Vec[Boolean]]): FrFrEOp[Op, X, Y, Long, Long, Boolean]
implicit def FrFrEOpLLL[Op <: ScalarOp, X, Y](implicit cm: ScalarTag[X], cmp: Order[X], my: ScalarTag[Y], cmpY: Order[Y], opv: BinOp[Op, Vec[Long], Vec[Long], Vec[Long]]): FrFrEOp[Op, X, Y, Long, Long, Long]
implicit def FrScEOpBBB[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Boolean], Boolean, Vec[Boolean]]): FrScEOp[Op, X, Y, Boolean, Boolean, Boolean]
implicit def FrScEOpDDB[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Double], Double, Vec[Boolean]]): FrScEOp[Op, X, Y, Double, Double, Boolean]
implicit def FrScEOpDDD[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Double], Double, Vec[Double]]): FrScEOp[Op, X, Y, Double, Double, Double]
implicit def FrScEOpDIB[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Double], Int, Vec[Boolean]]): FrScEOp[Op, X, Y, Double, Int, Boolean]
implicit def FrScEOpDID[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Double], Int, Vec[Double]]): FrScEOp[Op, X, Y, Double, Int, Double]
implicit def FrScEOpDLB[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Double], Long, Vec[Boolean]]): FrScEOp[Op, X, Y, Double, Long, Boolean]
implicit def FrScEOpDLD[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Double], Long, Vec[Double]]): FrScEOp[Op, X, Y, Double, Long, Double]
implicit def FrScEOpIDB[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Int], Double, Vec[Boolean]]): FrScEOp[Op, X, Y, Int, Double, Boolean]
implicit def FrScEOpIDD[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Int], Double, Vec[Double]]): FrScEOp[Op, X, Y, Int, Double, Double]
implicit def FrScEOpIIB[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Int], Int, Vec[Boolean]]): FrScEOp[Op, X, Y, Int, Int, Boolean]
implicit def FrScEOpIII[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Int], Int, Vec[Int]]): FrScEOp[Op, X, Y, Int, Int, Int]
implicit def FrScEOpILB[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Int], Long, Vec[Boolean]]): FrScEOp[Op, X, Y, Int, Long, Boolean]
implicit def FrScEOpILL[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Int], Long, Vec[Long]]): FrScEOp[Op, X, Y, Int, Long, Long]
implicit def FrScEOpLDB[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Long], Double, Vec[Boolean]]): FrScEOp[Op, X, Y, Long, Double, Boolean]
implicit def FrScEOpLDD[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Long], Double, Vec[Double]]): FrScEOp[Op, X, Y, Long, Double, Double]
implicit def FrScEOpLIB[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Long], Int, Vec[Boolean]]): FrScEOp[Op, X, Y, Long, Int, Boolean]
implicit def FrScEOpLIL[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Long], Int, Vec[Long]]): FrScEOp[Op, X, Y, Long, Int, Long]
implicit def FrScEOpLLB[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Long], Long, Vec[Boolean]]): FrScEOp[Op, X, Y, Long, Long, Boolean]
implicit def FrScEOpLLL[Op <: ScalarOp, X, Y](implicit opv: BinOp[Op, Vec[Long], Long, Vec[Long]]): FrScEOp[Op, X, Y, Long, Long, Long]