com.quantarray.anaheim.numerics.Interpolate.scala Maven / Gradle / Ivy
package com.quantarray.anaheim.numerics
import scala.annotation.implicitNotFound
/**
* Interpolate.
*
* Type class for interpolating a function [[F]] with domain [[K]] and range [[V]].
*
* For example, a function [[F]] mapping domain [[java.time.LocalDate]] to range [[Option]] [ [[Double]] ].
*/
@implicitNotFound("Cannot find Interpolate that applies to function ${F} = ${K} => ${V}.")
trait Interpolate[K, V, F]
{
def apply(f: F, k: K): V
}