-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Validate -- -- Validate data provided by users. @package validate @version 0.11 module Data.GenericString class IsString t => Str t readToMaybeStr :: (Str t, Read b) => t -> Maybe b showToStr :: (Str t, Show b) => b -> t appendStr :: Str t => t -> t -> t foldrStr :: Str t => (Char -> b -> b) -> b -> t -> b strToString :: Str t => t -> String instance Str ByteString instance Str ByteString instance Str String -- | Validate values, such as common user inputs; emails, age, address, -- credit card, web address, etc. module Data.Validate -- | A test taking input and producing a new input. type Test e a b = Maybe a -> Input e (Maybe b) -- | Validate some input with testing function. validate :: Str e => Test e a b -> a -> Maybe [e] -- | A generic testing function with a predicate, with type preservation. test :: Str e => e -> (a -> Bool) -> Test e a a -- | Attach a "label" around a testing function which errors. This might be -- useless. label :: Str e => e -> Test e a b -> Test e a b -- | Is equal to something. equal :: (Show a, Eq a, Str e) => a -> Test e a a -- | Check that a String contains an integer. isInt :: Str e => Test e e e -- | Check that a a value is less than a specified value. less :: (Str e, Ord a, Show a) => a -> Test e a a -- | Like less but the value must be more than the specified value. more :: (Str e, Ord a, Show a) => a -> Test e a a -- | Test that a given age is correct (130 years of age max.). -- http:www.seniorjournal.comNEWSSeniorStats/5-12-03-NoOne123.htm age :: (Str e, Str s) => Test e s Int -- | Make a test which tests a string according to a regular expression -- pattern. pattern :: (Str e, Str s) => e -> s -> Test e s s -- | Check that a string contains an integer, and try to convert to an Int. int :: (Str e, Str s) => Test e s Int -- | Check that a string contains an integer, and try to convert to a -- Float. float :: (Str e, Str s) => Test e s Float instance Str e => Monad (Input e)