Safe Haskell | None |
---|
- data Series k a = Series {
- seriesLength :: Int#
- seriesVector :: !(Vector a)
- index :: Unbox a => Series k a -> Int# -> a
- length :: Series k a -> Int#
- toVector :: Unbox a => Series k a -> Vector a
- runSeries :: Unbox a => Vector a -> (forall k. Series k a -> b) -> b
- runSeries2 :: (Unbox a, Unbox b) => Vector a -> Vector b -> (forall k. Series k a -> Series k b -> c) -> Maybe c
- runSeries3 :: (Unbox a, Unbox b, Unbox c) => Vector a -> Vector b -> Vector c -> (forall k. Series k a -> Series k b -> Series k c -> d) -> Maybe d
- runSeries4 :: (Unbox a, Unbox b, Unbox c, Unbox d) => Vector a -> Vector b -> Vector c -> Vector d -> (forall k. Series k a -> Series k b -> Series k c -> Series k d -> e) -> Maybe e
Documentation
A Series
is an abstract source of element data and is consumed
by series processes. The elements of a series must be consumed
sequentially, so they don't support random access indexing.
The rate parameter k
represents the abstract length of the series.
Series | |
|
toVector :: Unbox a => Series k a -> Vector aSource
Convert a series to a vector, discarding the rate information.
Evaluate a series expression, feeding it an unboxed vector.
The rate variable k
represents the length of the series.
:: (Unbox a, Unbox b) | |
=> Vector a | |
-> Vector b | |
-> (forall k. Series k a -> Series k b -> c) | worker function |
-> Maybe c |
Evaluate a series expression, feeding it two unboxed vectors of the same length.