HORIZON HASKELLDocslts/ghc-9.14.x45dd5372026-10-11Search names, modules, packages, or :: a typeCtrl K

GHC 9.14.1 · lts/ghc-9.14.x · 45dd537 · 2026-10-11

Moduleservant-0.20.3.0Haskell2010

Servant.API.Range

  • 1 type
  • 3 values
  • Packageservant-0.20.3.0
  • Exports4
  • LanguageHaskell2010
  • LicenceBSD-3-Clause
  • SourceRange.hs
newtypenewtype Range (min :: Nat) (max :: Nat)
#

A newtype wrapper around Natural that ensures the value is within a given range.

Example:

Example1 expression
:{  let validRange = mkRange 5 :: Maybe (Range 1 10)  in case validRange of       Just r  -> "Valid range: " ++ show (unRange r)       Nothing -> "Invalid range":}"Valid range: 5"
Example1 expression
:{  let invalidRange = mkRange 15 :: Maybe (Range 1 10)  in case invalidRange of       Just r  -> "Valid range: " ++ show (unRange r)       Nothing -> "Invalid range":}"Invalid range"
Example1 expression
decode "5" :: Maybe (Range 1 10)Just (MkRange {unRange = 5})
Example1 expression
decode "15" :: Maybe (Range 1 10)Nothing
Instances11Bounded, Eq, Ord, Show, Ix, Generic, …