
scalaz.syntax.MetricSpaceSyntax.scala Maven / Gradle / Ivy
The newest version!
package org.specs2.internal.scalaz
package syntax
/** Wraps a value `self` and provides methods related to `MetricSpace` */
trait MetricSpaceOps[F] extends Ops[F] {
implicit def F: MetricSpace[F]
////
final def <===>(a: F): Int = F.distance(self, a)
////
}
trait ToMetricSpaceOps {
implicit def ToMetricSpaceOps[F](v: F)(implicit F0: MetricSpace[F]) =
new MetricSpaceOps[F] { def self = v; implicit def F: MetricSpace[F] = F0 }
////
////
}
trait MetricSpaceSyntax[F] {
implicit def ToMetricSpaceOps(v: F): MetricSpaceOps[F] = new MetricSpaceOps[F] { def self = v; implicit def F: MetricSpace[F] = MetricSpaceSyntax.this.F }
def F: MetricSpace[F]
////
////
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy