Module

Polyform.Input.Interpret.Http

#Value

type Value = Array (Maybe String)

This representation should cover possible http query values: ?field, ?field=, ?field=value, ?field=value1&field=value2

#Query

#variantTag

variantTag :: forall v. Variant v -> String

#_handleValue

_handleValue :: forall a e n m v. Monad m => Variant n -> Query -> (V e v -> a) -> Validation m e Value v -> m a

#handleString

handleString :: forall e m n. Monad m => (StringF (Variant n) (Array (Variant (StringErr e))) Query) ~> m

#IntErr

type IntErr e = (scalar :: NonEmpty Array String, required :: Unit, int :: String | e)

#handleInt

handleInt :: forall e n m. Monad m => (IntF (Variant n) (Array (Variant (IntErr e))) Query) ~> m

#onField

onField :: forall t139 t145 t146 t147 t154 t155 t156. Monad t155 => (VariantF t139 t147 -> t155 t147) -> VariantF (string :: FProxy (StringF (Variant t154) (Array (Variant (scalar :: NonEmpty Array String, required :: Unit | t156))) (Object (Array (Maybe String)))), int :: FProxy (IntF (Variant t145) (Array (Variant (scalar :: NonEmpty Array String, required :: Unit, int :: String | t146))) (Object (Array (Maybe String)))) | t139) t147 -> t155 t147

#handle

handle :: forall t103 t111 t112 t120 t121 t122. Monad t121 => VariantF (string :: FProxy (StringF (Variant t120) (Array (Variant (scalar :: NonEmpty Array String, required :: Unit | t122))) (Object (Array (Maybe String)))), int :: FProxy (IntF (Variant t111) (Array (Variant (scalar :: NonEmpty Array String, required :: Unit, int :: String | t112))) (Object (Array (Maybe String))))) t103 -> t121 t103

#interpret

interpret :: forall ei es n n' m. Monad m => (Run (string :: FProxy (StringF (Variant n) (Array (Variant (StringErr es))) Query), int :: FProxy (IntF (Variant n') (Array (Variant (IntErr ei))) Query))) ~> m

Modules