parseHelperGen
This commit is contained in:
parent
9574eda4ae
commit
bcff12bed1
@ -39,6 +39,7 @@ module Yesod.Form.Functions
|
|||||||
-- * Utilities
|
-- * Utilities
|
||||||
, fieldSettingsLabel
|
, fieldSettingsLabel
|
||||||
, parseHelper
|
, parseHelper
|
||||||
|
, parseHelperGen
|
||||||
) where
|
) where
|
||||||
|
|
||||||
import Yesod.Form.Types
|
import Yesod.Form.Types
|
||||||
@ -428,6 +429,15 @@ fieldSettingsLabel msg = FieldSettings (SomeMessage msg) Nothing Nothing Nothing
|
|||||||
parseHelper :: (Monad m, RenderMessage site FormMessage)
|
parseHelper :: (Monad m, RenderMessage site FormMessage)
|
||||||
=> (Text -> Either FormMessage a)
|
=> (Text -> Either FormMessage a)
|
||||||
-> [Text] -> [FileInfo] -> m (Either (SomeMessage site) (Maybe a))
|
-> [Text] -> [FileInfo] -> m (Either (SomeMessage site) (Maybe a))
|
||||||
parseHelper _ [] _ = return $ Right Nothing
|
parseHelper = parseHelperGen
|
||||||
parseHelper _ ("":_) _ = return $ Right Nothing
|
|
||||||
parseHelper f (x:_) _ = return $ either (Left . SomeMessage) (Right . Just) $ f x
|
-- | A generalized version of 'parseHelper', allowing any type for the message
|
||||||
|
-- indicating a bad parse.
|
||||||
|
--
|
||||||
|
-- Since 1.3.6
|
||||||
|
parseHelperGen :: (Monad m, RenderMessage site msg)
|
||||||
|
=> (Text -> Either msg a)
|
||||||
|
-> [Text] -> [FileInfo] -> m (Either (SomeMessage site) (Maybe a))
|
||||||
|
parseHelperGen _ [] _ = return $ Right Nothing
|
||||||
|
parseHelperGen _ ("":_) _ = return $ Right Nothing
|
||||||
|
parseHelperGen f (x:_) _ = return $ either (Left . SomeMessage) (Right . Just) $ f x
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
name: yesod-form
|
name: yesod-form
|
||||||
version: 1.3.5.2
|
version: 1.3.6
|
||||||
license: MIT
|
license: MIT
|
||||||
license-file: LICENSE
|
license-file: LICENSE
|
||||||
author: Michael Snoyman <michael@snoyman.com>
|
author: Michael Snoyman <michael@snoyman.com>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user