Hoogle Search
Within LTS Haskell 24.33 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
enumFromThenTo :: Enum a => a -> a -> a -> [a]relude Relude.Enum Used in Haskell's translation of [n,n'..m] with [n,n'..m] = enumFromThenTo n n' m, a possible implementation being enumFromThenTo n n' m = worker (f x) (c x) n m, x = fromEnum n' - fromEnum n, c x = bool (>=) ((x 0)
f n y | n > 0 = f (n - 1) (succ y) | n < 0 = f (n + 1) (pred y) | otherwise = y
andworker s c v m | c v m = v : worker s c (s v) m | otherwise = []
Examples
enumFromThenTo 4 2 -6 :: [Integer] = [4,2,0,-2,-4,-6]
enumFromThenTo 6 8 2 :: [Int] = []
enumFromTo :: Enum a => a -> a -> [a]relude Relude.Enum Used in Haskell's translation of [n..m] with [n..m] = enumFromTo n m, a possible implementation being
enumFromTo n m | n <= m = n : enumFromTo (succ n) m | otherwise = []
Examples
enumFromTo 6 10 :: [Int] = [6,7,8,9,10]
enumFromTo 42 1 :: [Integer] = []
fromEnum :: Enum a => a -> Intrelude Relude.Enum Convert to an Int. It is implementation-dependent what fromEnum returns when applied to a value that is too large to fit in an Int.
-
relude Relude.Enum Convert from an Int.
-
Mini bounded-enum framework inside relude.
safeToEnum :: (Bounded a, Enum a) => Int -> Maybe arelude Relude.Extra.Enum Returns Nothing if given Int outside range.
>>> safeToEnum @Bool 0 Just False >>> safeToEnum @Bool 1 Just True >>> safeToEnum @Bool 2 Nothing >>> safeToEnum @Bool (-1) Nothing
-
relude Relude.Numeric Sign of a number. The functions abs and signum should satisfy the law:
abs x * signum x == x
For real numbers, the signum is either -1 (negative), 0 (zero) or 1 (positive). casesEnum :: (Bounded a, Enum a) => Cases aselective Control.Selective The list of all possible values of an enumerable data type.
class
Enumerable (t :: Type -> Type)selective Control.Selective.Multi A class of tags that can be enumerated. A valid instance must list every tag in the resulting list exactly once.
enumerate :: Enumerable t => [Some t]selective Control.Selective.Multi No documentation available.