| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
Data.Unique.Linear
Synopsis
- data UniqueSource
- new :: Linearly %1 -> UniqueSource
- sample :: UniqueSource %1 -> (Int, UniqueSource)
- split :: UniqueSource %1 -> (UniqueSource, UniqueSource)
- splitN :: Int -> UniqueSource %1 -> Vector UniqueSource
- splitV :: forall (n :: Nat). KnownNat n => UniqueSource %1 -> V n UniqueSource
- split3 :: UniqueSource -> (UniqueSource, UniqueSource, UniqueSource)
- split4 :: UniqueSource -> (UniqueSource, UniqueSource, UniqueSource, UniqueSource)
- split5 :: UniqueSource -> (UniqueSource, UniqueSource, UniqueSource, UniqueSource, UniqueSource)
Documentation
data UniqueSource Source #
Instances
| Show UniqueSource Source # | |
Defined in Data.Unique.Linear Methods showsPrec :: Int -> UniqueSource -> ShowS # show :: UniqueSource -> String # showList :: [UniqueSource] -> ShowS # | |
| Eq UniqueSource Source # | |
Defined in Data.Unique.Linear | |
| Ord UniqueSource Source # | |
Defined in Data.Unique.Linear Methods compare :: UniqueSource -> UniqueSource -> Ordering # (<) :: UniqueSource -> UniqueSource -> Bool # (<=) :: UniqueSource -> UniqueSource -> Bool # (>) :: UniqueSource -> UniqueSource -> Bool # (>=) :: UniqueSource -> UniqueSource -> Bool # max :: UniqueSource -> UniqueSource -> UniqueSource # min :: UniqueSource -> UniqueSource -> UniqueSource # | |
| Consumable UniqueSource Source # | |
Defined in Data.Unique.Linear Methods consume :: UniqueSource %1 -> () # | |
new :: Linearly %1 -> UniqueSource Source #
sample :: UniqueSource %1 -> (Int, UniqueSource) Source #
split :: UniqueSource %1 -> (UniqueSource, UniqueSource) Source #
Split a UniqueSource into two, each with non-overlapping ranges.
splitN :: Int -> UniqueSource %1 -> Vector UniqueSource Source #
splitV :: forall (n :: Nat). KnownNat n => UniqueSource %1 -> V n UniqueSource Source #
split3 :: UniqueSource -> (UniqueSource, UniqueSource, UniqueSource) Source #