| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
FRP.Rhine.ResamplingBuffer
- data ResamplingBuffer m cla clb a b = ResamplingBuffer {
- put :: TimeInfo cla -> a -> m (ResamplingBuffer m cla clb a b)
- get :: TimeInfo clb -> m (b, ResamplingBuffer m cla clb a b)
- hoistResamplingBuffer :: (Monad m1, Monad m2) => (forall c. m1 c -> m2 c) -> ResamplingBuffer m1 cla clb a b -> ResamplingBuffer m2 cla clb a b
Documentation
data ResamplingBuffer m cla clb a b Source #
A stateful buffer from which one may get a value,
or to which one may put a value,
depending on the clocks.
ResamplingBuffers can be clock-polymorphic,
or specific to certain clocks.
m: Monad in which theResamplingBuffermay have side effectscla: The clock at which data enters the bufferclb: The clock at which data leaves the buffera: The input typeb: The output type
Constructors
| ResamplingBuffer | |
Fields
| |
hoistResamplingBuffer :: (Monad m1, Monad m2) => (forall c. m1 c -> m2 c) -> ResamplingBuffer m1 cla clb a b -> ResamplingBuffer m2 cla clb a b Source #
Hoist a ResamplingBuffer along a monad morphism.