|
|
|
| Description |
| Haskell98 version of the submission functions.
|
|
| Synopsis |
|
| class InputHandle h | | | class HasValue i where | | | | data F0 x = F0 | | | data F1 a x = F1 (a x) | | | data F2 a b x = F2 (a x) (b x) | | | data F3 a b c x = F3 (a x) (b x) (c x) | | | data F4 a b c d x = F4 (a x) (b x) (c x) (d x) | | | data F5 a b c d e x = F5 (a x) (b x) (c x) (d x) (e x) | | | data F6 a b c d e f x = F6 (a x) (b x) (c x) (d x) (e x) (f x) | | | data F7 a b c d e f g x = F7 (a x) (b x) (c x) (d x) (e x) (f x) (g x) | | | data F8 a b c d e f g h x = F8 (a x) (b x) (c x) (d x) (e x) (f x) (g x) (h x) | | | data FL a x = FL [a x] | | | data FA a b x = FA a (b x) | | | deF0 :: r -> F0 x -> r | | | deF1 :: (a x -> r) -> F1 a x -> r | | | deF2 :: (a x -> b x -> r) -> F2 a b x -> r | | | deF3 :: (a x -> b x -> c x -> r) -> F3 a b c x -> r | | | deF4 :: (a x -> b x -> c x -> d x -> r) -> F4 a b c d x -> r | | | deF5 :: (a x -> b x -> c x -> d x -> e x -> r) -> F5 a b c d e x -> r | | | deF6 :: (a x -> b x -> c x -> d x -> e x -> f x -> r) -> F6 a b c d e f x -> r | | | deF7 :: (a x -> b x -> c x -> d x -> e x -> f x -> g x -> r) -> F7 a b c d e f g x -> r | | | deF8 :: (a x -> b x -> c x -> d x -> e x -> f x -> g x -> h x -> r) -> F8 a b c d e f g h x -> r | | | deFL :: ([a x] -> r) -> FL a x -> r | | | deFA :: (a -> b x -> r) -> FA a b x -> r | | | deValueF0 :: t -> F0 t1 -> t | | | deValueF1 :: HasValue i => (a -> t) -> F1 (i a) VALID -> t | | | deValueF2 :: (HasValue i, HasValue i1) => (a -> a1 -> t) -> F2 (i a) (i1 a1) VALID -> t | | | deValueF3 :: (HasValue i, HasValue i1, HasValue i2) => (a -> a1 -> a2 -> t) -> F3 (i a) (i1 a1) (i2 a2) VALID -> t | | | deValueF4 :: (HasValue i, HasValue i1, HasValue i2, HasValue i3) => (a -> a1 -> a2 -> a3 -> t) -> F4 (i a) (i1 a1) (i2 a2) (i3 a3) VALID -> t | | | deValueF5 :: (HasValue i, HasValue i1, HasValue i2, HasValue i3, HasValue i4) => (a -> a1 -> a2 -> a3 -> a4 -> t) -> F5 (i a) (i1 a1) (i2 a2) (i3 a3) (i4 a4) VALID -> t | | | deValueF6 :: (HasValue i, HasValue i1, HasValue i2, HasValue i3, HasValue i4, HasValue i5) => (a -> a1 -> a2 -> a3 -> a4 -> a5 -> t) -> F6 (i a) (i1 a1) (i2 a2) (i3 a3) (i4 a4) (i5 a5) VALID -> t | | | deValueF7 :: (HasValue i, HasValue i1, HasValue i2, HasValue i3, HasValue i4, HasValue i5, HasValue i6) => (a -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> t) -> F7 (i a) (i1 a1) (i2 a2) (i3 a3) (i4 a4) (i5 a5) (i6 a6) VALID -> t | | | deValueF8 :: (HasValue i, HasValue i1, HasValue i2, HasValue i3, HasValue i4, HasValue i5, HasValue i6, HasValue i7) => (a -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> t) -> F8 (i a) (i1 a1) (i2 a2) (i3 a3) (i4 a4) (i5 a5) (i6 a6) (i7 a7) VALID -> t | | | deValueFL :: HasValue i => ([a] -> t) -> FL (i a) VALID -> t | | | deValueFA :: HasValue i => (t -> a -> t1) -> FA t (i a) VALID -> t1 | | | submit :: (CGIMonad cgi, InputHandle h) => h INVALID -> (h VALID -> cgi ()) -> HTMLField cgi x y () | | | submit0 :: CGIMonad cgi => cgi () -> HTMLField cgi x y () | | | defaultSubmit :: (CGIMonad cgi, InputHandle h) => h INVALID -> (h VALID -> cgi ()) -> HTMLField cgi x y () | | | data DTree cgi x y | | | submitx :: DTree cgi x y -> HTMLField cgi x y () | | | dtleaf :: CGIMonad cgi => cgi () -> DTree cgi x y | | | dtnode :: (CGIMonad cgi, InputHandle h) => h INVALID -> (h VALID -> DTree cgi x y) -> DTree cgi x y | | | submitLink :: (CGIMonad cgi, InputHandle h) => h INVALID -> (h VALID -> cgi ()) -> HTMLCons x y cgi () | | | submitLink0 :: CGIMonad cgi => cgi () -> HTMLCons x y cgi () | | | defaultSubmitLink :: (CGIMonad cgi, InputHandle h) => h INVALID -> (h VALID -> cgi ()) -> HTMLCons x y cgi () | | | activate :: (CGIMonad cgi, InputHandle (i a), HasValue i) => (a -> cgi ()) -> HTMLField cgi x y (i a INVALID) -> HTMLField cgi x y (i a INVALID) |
|
|
| Documentation |
|
|
|
|
|
| | Methods | | | extract a value from various kinds of input handles
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Constructors | | F4 (a x) (b x) (c x) (d x) | |
|
|
|
|
| Constructors | | F5 (a x) (b x) (c x) (d x) (e x) | |
|
|
|
|
| Constructors | | F6 (a x) (b x) (c x) (d x) (e x) (f x) | |
|
|
|
| data F7 a b c d e f g x | Source |
|
| Constructors | | F7 (a x) (b x) (c x) (d x) (e x) (f x) (g x) | |
|
|
|
| data F8 a b c d e f g h x | Source |
|
| Constructors | | F8 (a x) (b x) (c x) (d x) (e x) (f x) (g x) (h x) | |
|
|
|
|
| FL is required to pass an unknown number of handles of the same
type need to the callback function in a form submission. The
handles need to be collected in a list and then wrapped in the FL data constructor
| | Constructors | |
|
|
|
| FA comes handy when you want to tag an input handle with some extra
information, which is not itsefl an input handle and which is not validated
by a form submission. The tag is the first argument and the handle is the
second argument of the data constructor.
| | Constructors | |
|
|
|
|
|
|
| deF2 :: (a x -> b x -> r) -> F2 a b x -> r | Source |
|
|
| deF3 :: (a x -> b x -> c x -> r) -> F3 a b c x -> r | Source |
|
|
| deF4 :: (a x -> b x -> c x -> d x -> r) -> F4 a b c d x -> r | Source |
|
|
| deF5 :: (a x -> b x -> c x -> d x -> e x -> r) -> F5 a b c d e x -> r | Source |
|
|
| deF6 :: (a x -> b x -> c x -> d x -> e x -> f x -> r) -> F6 a b c d e f x -> r | Source |
|
|
| deF7 :: (a x -> b x -> c x -> d x -> e x -> f x -> g x -> r) -> F7 a b c d e f g x -> r | Source |
|
|
| deF8 :: (a x -> b x -> c x -> d x -> e x -> f x -> g x -> h x -> r) -> F8 a b c d e f g h x -> r | Source |
|
|
| deFL :: ([a x] -> r) -> FL a x -> r | Source |
|
|
| deFA :: (a -> b x -> r) -> FA a b x -> r | Source |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| :: (CGIMonad cgi, InputHandle h) | | | => h INVALID | callback maps valid input handles to a CGI action
| | -> h VALID -> cgi () | returns a field so that attributes can be attached
| | -> HTMLField cgi x y () | | | Create a submission button with attached action.
|
|
|
|
| Create a continuation button that takes no parameters.
|
|
|
| Create a submission button whose attached action is fired whenever the form
is submitted without explicitly clicking any submit button. This can happen if
an input field has an attached onclick=submit() action.
|
|
|
| Abstract type of decisions trees. These trees provide structured validation.
|
|
|
|
| Create a submission button whose validation proceeds according to a decision
tree. Trees are built using dtleaf and dtnode.
|
|
|
| Create a leaf in a decision tree from a CGI action.
|
|
|
| Create a node in a decision tree. Takes an invalid input field and a
continuation. Validates the input field and passes it to the continuation if
the validation was successful. The continuation can dispatch on the value of
the input field and produces a new decision tree.
|
|
|
| Create an ordinary link serving as a submission button.
|
|
|
| Create a continuation link.
|
|
|
|
|
| Attach a CGI action to the value returned by the input field. Activation
means that data is submitted as soon as it is entered.
|
|
| Produced by Haddock version 2.6.0 |