Safe Haskell | None |
---|---|
Language | Haskell98 |
- data T a = forall state ioContext . C state => Cons (forall r c. Phi c => ioContext -> state -> T r c (a, state)) (forall r. ioContext -> CodeGenFunction r state) (IO ioContext) (ioContext -> IO ())
- data Core context initState exitState a = forall state . C state => Core (forall r c. Phi c => context -> state -> T r c (a, state)) (forall r. initState -> CodeGenFunction r state) (state -> exitState)
- class Applicative signal => C signal where
- map :: C signal => (forall r. a -> CodeGenFunction r b) -> signal a -> signal b
- mapAccum :: (C signal, C s) => (forall r. a -> s -> CodeGenFunction r (b, s)) -> (forall r. CodeGenFunction r s) -> signal a -> signal b
- zipWith :: C signal => (forall r. a -> b -> CodeGenFunction r c) -> signal a -> signal b -> signal c
- zip :: T a -> T b -> T (a, b)
- mix :: (C signal, Additive a) => signal a -> signal a -> signal a
- envelope :: (C signal, PseudoRing a) => signal a -> signal a -> signal a
- envelopeStereo :: (C signal, PseudoRing a) => signal a -> signal (T a) -> signal (T a)
- amplify :: (IsArithmetic a, IsConst a) => a -> T (Value a) -> T (Value a)
- amplifyStereo :: (IsArithmetic a, IsConst a) => a -> T (T (Value a)) -> T (T (Value a))
- iterate :: (FirstClass a, Stored a ~ am, IsSized am, IsConst a) => (forall r. Value a -> CodeGenFunction r (Value a)) -> Value a -> T (Value a)
- exponential2 :: (C a, IsArithmetic a, FirstClass a, Stored a ~ am, IsSized am, IsConst a) => a -> a -> T (Value a)
- osciPlain :: (FirstClass t, Stored t ~ tm, IsSized tm, Fraction t, IsConst t) => (forall r. Value t -> CodeGenFunction r y) -> Value t -> Value t -> T y
- osci :: (FirstClass t, Stored t ~ tm, IsSized tm, Fraction t, IsConst t) => (forall r. Value t -> CodeGenFunction r y) -> t -> t -> T y
- osciSaw :: (IntegerConstant a, FirstClass a, Stored a ~ am, IsSized am, Fraction a, IsConst a) => a -> a -> T (Value a)
- fromStorableVector :: (Storable a, MakeValueTuple a, ValueTuple a ~ value, C value) => Vector a -> T value
- fromStorableVectorLazy :: (Storable a, MakeValueTuple a, ValueTuple a ~ value, C value) => Vector a -> T value
- render :: (Storable a, MakeValueTuple a, ValueTuple a ~ value, C value) => Int -> T value -> Vector a
- derefChunkPtr :: Importer (Ptr stateStruct -> Word32 -> Ptr struct -> IO Word32)
- compileChunky :: (C value, Struct value ~ struct, C state, Struct state ~ stateStruct) => (forall r z. Phi z => state -> T r z (value, state)) -> (forall r. CodeGenFunction r state) -> IO (FunPtr (IO (Ptr stateStruct)), FunPtr (Ptr stateStruct -> IO ()), FunPtr (Ptr stateStruct -> Word32 -> Ptr struct -> IO Word32))
- runChunky :: (Storable a, MakeValueTuple a, ValueTuple a ~ value, C value) => ChunkSize -> T value -> IO (Vector a)
- renderChunky :: (Storable a, MakeValueTuple a, ValueTuple a ~ value, C value) => ChunkSize -> T value -> Vector a
Documentation
forall state ioContext . C state => Cons (forall r c. Phi c => ioContext -> state -> T r c (a, state)) (forall r. ioContext -> CodeGenFunction r state) (IO ioContext) (ioContext -> IO ()) |
Functor T | |
Applicative T | ZipList semantics |
C T | |
(Field a, Real a, RationalConstant a) => Fractional (T a) | |
(PseudoRing a, Real a, IntegerConstant a) => Num (T a) | |
(Field a, RationalConstant a) => C (T a) | |
(PseudoRing a, IntegerConstant a) => C (T a) | |
Additive a => C (T a) | |
type ProcessOf T = T |
data Core context initState exitState a Source
forall state . C state => Core (forall r c. Phi c => context -> state -> T r c (a, state)) (forall r. initState -> CodeGenFunction r state) (state -> exitState) |
class Applicative signal => C signal where Source
map :: C signal => (forall r. a -> CodeGenFunction r b) -> signal a -> signal b Source
mapAccum :: (C signal, C s) => (forall r. a -> s -> CodeGenFunction r (b, s)) -> (forall r. CodeGenFunction r s) -> signal a -> signal b Source
zipWith :: C signal => (forall r. a -> b -> CodeGenFunction r c) -> signal a -> signal b -> signal c Source
envelope :: (C signal, PseudoRing a) => signal a -> signal a -> signal a Source
envelopeStereo :: (C signal, PseudoRing a) => signal a -> signal (T a) -> signal (T a) Source
amplifyStereo :: (IsArithmetic a, IsConst a) => a -> T (T (Value a)) -> T (T (Value a)) Source
iterate :: (FirstClass a, Stored a ~ am, IsSized am, IsConst a) => (forall r. Value a -> CodeGenFunction r (Value a)) -> Value a -> T (Value a) Source
exponential2 :: (C a, IsArithmetic a, FirstClass a, Stored a ~ am, IsSized am, IsConst a) => a -> a -> T (Value a) Source
osciPlain :: (FirstClass t, Stored t ~ tm, IsSized tm, Fraction t, IsConst t) => (forall r. Value t -> CodeGenFunction r y) -> Value t -> Value t -> T y Source
osci :: (FirstClass t, Stored t ~ tm, IsSized tm, Fraction t, IsConst t) => (forall r. Value t -> CodeGenFunction r y) -> t -> t -> T y Source
osciSaw :: (IntegerConstant a, FirstClass a, Stored a ~ am, IsSized am, Fraction a, IsConst a) => a -> a -> T (Value a) Source
fromStorableVector :: (Storable a, MakeValueTuple a, ValueTuple a ~ value, C value) => Vector a -> T value Source
fromStorableVectorLazy :: (Storable a, MakeValueTuple a, ValueTuple a ~ value, C value) => Vector a -> T value Source
render :: (Storable a, MakeValueTuple a, ValueTuple a ~ value, C value) => Int -> T value -> Vector a Source
compileChunky :: (C value, Struct value ~ struct, C state, Struct state ~ stateStruct) => (forall r z. Phi z => state -> T r z (value, state)) -> (forall r. CodeGenFunction r state) -> IO (FunPtr (IO (Ptr stateStruct)), FunPtr (Ptr stateStruct -> IO ()), FunPtr (Ptr stateStruct -> Word32 -> Ptr struct -> IO Word32)) Source
runChunky :: (Storable a, MakeValueTuple a, ValueTuple a ~ value, C value) => ChunkSize -> T value -> IO (Vector a) Source
renderChunky :: (Storable a, MakeValueTuple a, ValueTuple a ~ value, C value) => ChunkSize -> T value -> Vector a Source