Portability | GHC |
---|---|
Stability | highly unstable |
Maintainer | stephen.tetley@gmail.com |
Chaining moveable LocGraphics.
- data GenChain st u a
- type Chain u a = GenChain () u a
- type DChain a = Chain Double a
- data ChainScheme u = forall cst . ChainScheme {
- chain_init :: Point2 u -> cst
- chain_step :: Point2 u -> cst -> (Point2 u, cst)
- runGenChain :: InterpretUnit u => ChainScheme u -> st -> GenChain st u a -> LocImage u (a, st)
- evalGenChain :: InterpretUnit u => ChainScheme u -> st -> GenChain st u a -> LocImage u a
- execGenChain :: InterpretUnit u => ChainScheme u -> st -> GenChain st u a -> LocImage u st
- stripGenChain :: InterpretUnit u => ChainScheme u -> st -> GenChain st u a -> LocQuery u (a, st)
- runChain :: InterpretUnit u => ChainScheme u -> Chain u a -> LocImage u a
- runChain_ :: InterpretUnit u => ChainScheme u -> Chain u a -> LocGraphic u
- chain1 :: InterpretUnit u => LocImage u a -> GenChain st u a
- sequenceChain :: InterpretUnit u => [LocImage u a] -> GenChain st u (UNil u)
- setChainScheme :: InterpretUnit u => ChainScheme u -> GenChain st u ()
- chainPrefix :: ChainScheme u -> Int -> ChainScheme u -> ChainScheme u
- chainIterate :: (Point2 u -> Point2 u) -> ChainScheme u
- horizontalChainScm :: Num u => u -> ChainScheme u
- verticalChainScm :: Num u => u -> ChainScheme u
- runChainH :: InterpretUnit u => u -> Chain u a -> LocImage u a
- runChainV :: InterpretUnit u => u -> Chain u a -> LocImage u a
- tableRowwiseScm :: Num u => Int -> (u, u) -> ChainScheme u
- tableColumnwiseScm :: Num u => Int -> (u, u) -> ChainScheme u
- runTableRowwise :: InterpretUnit u => Int -> (u, u) -> Chain u a -> LocImage u a
- runTableColumnwise :: InterpretUnit u => Int -> (u, u) -> Chain u a -> LocImage u a
- radialChain :: Floating u => u -> Radian -> Radian -> ChainScheme u
Documentation
Monad (GenChain st u) | |
Functor (GenChain st u) | |
Applicative (GenChain st u) | |
DrawingCtxM (GenChain st u) | |
InterpretUnit u => LocationM (GenChain st u) | |
UserStateM (GenChain st u) | |
Monoid a => Monoid (GenChain st u a) |
data ChainScheme u Source
scheme_start is a function from the origin to state.
For instance, we might want to cache the origin - this would
not be possible if start was just a pure cst
value.
forall cst . ChainScheme | |
|
runGenChain :: InterpretUnit u => ChainScheme u -> st -> GenChain st u a -> LocImage u (a, st)Source
evalGenChain :: InterpretUnit u => ChainScheme u -> st -> GenChain st u a -> LocImage u aSource
Forget the user state LocImage, just return the answer.
execGenChain :: InterpretUnit u => ChainScheme u -> st -> GenChain st u a -> LocImage u stSource
Forget the answer, just return the user state.
stripGenChain :: InterpretUnit u => ChainScheme u -> st -> GenChain st u a -> LocQuery u (a, st)Source
runChain :: InterpretUnit u => ChainScheme u -> Chain u a -> LocImage u aSource
runChain_ :: InterpretUnit u => ChainScheme u -> Chain u a -> LocGraphic uSource
chain1 :: InterpretUnit u => LocImage u a -> GenChain st u aSource
sequenceChain :: InterpretUnit u => [LocImage u a] -> GenChain st u (UNil u)Source
setChainScheme :: InterpretUnit u => ChainScheme u -> GenChain st u ()Source
chainPrefix :: ChainScheme u -> Int -> ChainScheme u -> ChainScheme uSource
chainIterate :: (Point2 u -> Point2 u) -> ChainScheme uSource
horizontalChainScm :: Num u => u -> ChainScheme uSource
verticalChainScm :: Num u => u -> ChainScheme uSource
runChainH :: InterpretUnit u => u -> Chain u a -> LocImage u aSource
runChainV :: InterpretUnit u => u -> Chain u a -> LocImage u aSource
tableRowwiseScm :: Num u => Int -> (u, u) -> ChainScheme uSource
tableColumnwiseScm :: Num u => Int -> (u, u) -> ChainScheme uSource
runTableRowwise :: InterpretUnit u => Int -> (u, u) -> Chain u a -> LocImage u aSource
runTableColumnwise :: InterpretUnit u => Int -> (u, u) -> Chain u a -> LocImage u aSource
radialChain :: Floating u => u -> Radian -> Radian -> ChainScheme uSource