Safe Haskell | None |
---|---|
Language | Haskell98 |
- data Error
- data CallRecovery
- type R t a = Result t a
- data Result t a
- = Fine a
- | UnexpectedInt Error (Int -> t (R t a) (R t a))
- | UnexpectedBool Error (Bool -> t (R t a) (R t a))
- | UnexpectedURL Error (URL -> t (R t a) (R t a))
- | UnexpectedRequest Error (Request -> t (R t a) (R t a))
- | UnexpectedResponse Error (Response -> t (R t a) (R t a))
- | UnexpectedFormField Form String (String -> t (R t a) (R t a))
- | LoginActionsExhausted
- | RepeatedForm Form (() -> t (R t a) (R t a))
- | JSONParseFailure ByteString (JSON -> t (R t a) (R t a))
- | JSONParseFailure' JSON String
- | JSONCovertionFailure (JSON, Text) (JSON -> t (R t a) (R t a))
- | LogError Text (() -> t (R t a) (R t a))
- | CallFailure (MethodName, MethodArgs, JSON, String) (CallRecovery -> t (R t a) (R t a))
- data ResultDescription a
- describeResult :: Show a => Result t a -> Text
Documentation
data CallRecovery Source #
Message type used by the Superwiser to comminicatre with VK
coroutine.
See apiR
for usage example.
ReExec MethodName MethodArgs | VK program is to re-execute the method with the given parameters |
ReParse JSON | VK program is to re-parse the JSON as if it was the result of API call in question |
Result of VK
monad execution. t
represents the continuation monad, which
needs to track two types: the early break t
and the current result a
.
In order to be runnable (e.g. by runVK
) both types are need to be the same.
- FIXME re-implement the concept using
Free
library - FIMXE clean out of test/unused constructors
Fine a | The normal exit of a computation |
UnexpectedInt Error (Int -> t (R t a) (R t a)) | Invalid integer value. It is possible for client to set a correct URL and continue |
UnexpectedBool Error (Bool -> t (R t a) (R t a)) | Invalid boolean value. It is possible for client to set a correct URL and continue |
UnexpectedURL Error (URL -> t (R t a) (R t a)) | Invalid URL. It is possible for client to set a correct URL and continue |
UnexpectedRequest Error (Request -> t (R t a) (R t a)) | |
UnexpectedResponse Error (Response -> t (R t a) (R t a)) | |
UnexpectedFormField Form String (String -> t (R t a) (R t a)) | |
LoginActionsExhausted | |
RepeatedForm Form (() -> t (R t a) (R t a)) | |
JSONParseFailure ByteString (JSON -> t (R t a) (R t a)) | |
JSONParseFailure' JSON String | |
JSONCovertionFailure (JSON, Text) (JSON -> t (R t a) (R t a)) | Failed to convert JSON into Haskell object, Text describes an error. Superwiser may wish to replace the JSON with the correct one |
LogError Text (() -> t (R t a) (R t a)) | |
CallFailure (MethodName, MethodArgs, JSON, String) (CallRecovery -> t (R t a) (R t a)) |
data ResultDescription a Source #
Show a => Show (ResultDescription a) Source # | |