module Synthesizer.Dimensional.Rate where
import qualified Number.DimensionTerm as DN
import qualified Algebra.DimensionTerm as Dim
import qualified Synthesizer.Utility as Util
data Phantom s = Phantom
newtype Actual rate = Actual rate
type Dimensional u t = Actual (DN.T (Dim.Recip u) t)
{-# INLINE common #-}
common :: Eq rate => String -> rate -> rate -> rate
common :: forall rate. Eq rate => String -> rate -> rate -> rate
common String
funcName =
forall rate. Eq rate => String -> rate -> rate -> rate
Util.common (String
"Sample rates differ in " forall a. [a] -> [a] -> [a]
++ String
funcName)