Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- type family HKD f a where ...
- data UKey
- zeroUKey :: UKey
- smallerUKey :: UKey -> UKey
- largerUKey :: UKey -> UKey
- betweenUKey :: UKey -> UKey -> UKey
- type Collection t s f = t (HKD f s)
- type HKCollection t s f = t (HKD f (s f))
- collectionWindow :: (Functor t, Foldable t) => ReactId -> Window (t (Subject s)) ()
- deleteCollectionItem :: (MonadReactor p allS cmd m, Ord k) => k -> ModelState (Map k (Subject s)) (m ())
- insertCollectionItem :: (MonadReactor p allS cmd m, Ord k) => k -> Subject s -> ModelState (Map k (Subject s)) (m ())
Documentation
A key where you can always create another key ordered between two different keys, or another key above or below this key. Memonic: U for uncountable https://en.wikipedia.org/wiki/Uncountable_set
smallerUKey :: UKey -> UKey Source #
Create a key smaller than the input key.
largerUKey :: UKey -> UKey Source #
Create a key larger than the input key.
betweenUKey :: UKey -> UKey -> UKey Source #
Make a key that will fit in between the two provided keys, with no guarantees on how close it is to the mid point. Except when the inputs are equal, then it will return the same key.
Collection
type Collection t s f = t (HKD f s) Source #
Collection of higher kinded data
type HKCollection t s f = t (HKD f (s f)) Source #
Collection of higher kinded "higher kinded data"
collectionWindow :: (Functor t, Foldable t) => ReactId -> Window (t (Subject s)) () Source #
Collection doesn't have an initializing gadget since
the Subject
s in the model are all initialized via addSubject
.
deleteCollectionItem :: (MonadReactor p allS cmd m, Ord k) => k -> ModelState (Map k (Subject s)) (m ()) Source #
insertCollectionItem :: (MonadReactor p allS cmd m, Ord k) => k -> Subject s -> ModelState (Map k (Subject s)) (m ()) Source #