- input' :: Monad m => (String -> String -> xml) -> Maybe String -> Form xml m String
- inputM' :: Monad m => (String -> String -> m xml) -> Maybe String -> Form xml m String
- optionalInput :: Monad m => (String -> xml) -> Form xml m (Maybe String)
- inputFile :: Monad m => (String -> xml) -> Form xml m File
- fmapFst :: (t -> t2) -> (t, t1) -> (t2, t1)
- nothingIfNull :: (Monad m, Functor m) => Form xml m String -> Form xml m (Maybe String)
- check :: Monad m => Form xml m a -> (a -> Failing b) -> Form xml m b
- ensure :: Show a => (a -> Bool) -> String -> a -> Failing a
- ensures :: Show a => [(a -> Bool, String)] -> a -> Failing a
- ensureM :: (Monad m, Show a) => (a -> m Bool) -> String -> a -> m (Failing a)
- checkM :: Monad m => Form xml m a -> (a -> m (Failing b)) -> Form xml m b
- pureM :: (Monad m, Monoid xml) => m a -> Form xml m a
- runFormState :: Monad m => Env -> Form xml m a -> (m (Failing a), m xml, FormContentType)
- massInput :: (Applicative m, Monad m, Monoid xml) => Formlet xml m a -> Formlet xml m [a]
- xml :: Monad m => xml -> Form xml m ()
- plug :: (Monad m, Monoid xml) => (xml -> xml1) -> Form xml m a -> Form xml1 m a
- plug' :: (Monad m, Monoid xml1) => (xml1 -> xml2) -> Formlet xml1 m a -> Formlet xml2 m a
- type Env = [(String, Either String File)]
- data Form xml m a
- type Formlet xml m a = Maybe a -> Form xml m a
- data File = File {}
- data ContentType = ContentType {}
- data FormContentType
- = UrlEncoded
- | MultiPart
Documentation
input' :: Monad m => (String -> String -> xml) -> Maybe String -> Form xml m StringSource
Helper function for genereting input components based forms.
:: Monad m | |
=> (String -> xml) | Generates the xml for the file-upload widget based on the name |
-> Form xml m File |
A File input widget.
nothingIfNull :: (Monad m, Functor m) => Form xml m String -> Form xml m (Maybe String)Source
Returns Nothing if the result is the empty String.
check :: Monad m => Form xml m a -> (a -> Failing b) -> Form xml m bSource
Check a condition or convert a result
:: Show a | |
=> (a -> Bool) | The predicate |
-> String | The error message, in case the predicate fails |
-> a | The value |
-> Failing a |
Apply a predicate to a value and return FR.Success or FR.Failure as appropriate
:: Show a | |
=> [(a -> Bool, String)] | List of predicate functions and error messages, in case the predicate fails |
-> a | The value |
-> Failing a |
Apply multiple predicates to a value, return FR.Success or all the FR.Failure messages
checkM :: Monad m => Form xml m a -> (a -> m (Failing b)) -> Form xml m bSource
Monadically check a condition or convert a result
:: Monad m | |
=> Env | A previously filled environment (may be empty) |
-> Form xml m a | The form |
-> (m (Failing a), m xml, FormContentType) |
Runs the form state
:: (Applicative m, Monad m, Monoid xml) | |
=> Formlet xml m a | A formlet for a single a |
-> Formlet xml m [a] |
This generates a single (or more) forms for a, and a parser function for a list of a's.
plug :: (Monad m, Monoid xml) => (xml -> xml1) -> Form xml m a -> Form xml1 m aSource
Transform the XML component
(Functor m, Monad m) => Functor (Form xml m) | |
(Monad m, Applicative m, Monoid xml) => Applicative (Form xml m) |
File | |
|