úÎ&‡%    0(c) Tom Hulihan <hulihan.tom159@gmail.com> 2014,MIThulihan.tom159@gmail.com experimental+non-portable (multi-parameter type classes) Safe-Inferred2468-This type class generalizes monadic requests. Parameters:r - The type of requestr' - The type of responsem0 - The monad through which the requests are sentGiven a request of type r, perform an action in m whose result is r'.  0(c) Tom Hulihan <hulihan.tom159@gmail.com> 2014,MIThulihan.tom159@gmail.com experimental+non-portable (multi-parameter type classes) Safe-Inferred246 4A request monad, parameterized by the request type, r, response type, r', and inner monad, m.4A Request monad, parameterized by the request type, r, and response type, r' . together.@Turn a request and response callback into a monadic computation. Evaluate a  r r' a action.Given a x -> r6, transform a computation that sends requests of type x' into one that sends requests of type r.Given a mapping from r' -> x5, transform a computation handles responses of type x' to one that handles responses of type r'.IThis function takes a request and monadic response handler to produce a  r r' m a. Given a  r r' m aX and a mapping from requests to responses, return a monadic computation which produces a. !Turn a computation that requests x" into a computation that requests r.  Turn a computation that handles x! into a computation that handles r'. The requestThe response callbackThe resulting computationThe computation to run-A function that turns requests into responses#The final result of the computationThe middleware functionThe computation which sends xThe computation which sends rThe middleware functionThe computation which handles xThe computation which handles r' The requestThe response callbackThe resulting computation The computation to runThe request functionThe resulting computation The middlewareThe x -requesterThe r -requester The middlewareThe x-handlerThe r'-handler    0(c) Tom Hulihan <hulihan.tom159@gmail.com> 2014,MIThulihan.tom159@gmail.com experimental+non-portable (multi-parameter type classes) Safe-Inferred        request-monad-0.3.0.0Control.Monad.Request.ClassControl.Monad.Request.LazyControl.Monad.Request MonadRequestsendRequestTRequestrequest runRequest mapRequest mapResponserequestT runRequestT mapRequestT mapResponseT$fMonadRequestrr'WriterT$fMonadRequestrr'WriterT0$fMonadRequestrr'StateT$fMonadRequestrr'StateT0$fMonadRequestrr'ReaderT$fMonadRequestrr'RWST$fMonadRequestrr'RWST0$fMonadRequestrr'MaybeT$fMonadRequestrr'ListT$fMonadRequestrr'ExceptT$fMonadRequestrr'ErrorT$fMonadRequestrr'ContT$fMonadRequestrr'IdentityTRequestF$fFunctorRequestF$fMonadRequestrr'FreeT