Îõ³h$',&4      !"#$%&'()*+,-./0123 Safe-Inferred>ÀÁÂÑà%çexitcodeÉAn exit code status where failing with a value `0` cannot be represented.4Transformer for either a (non-zero exit code value (4) with error :: e) or a (value :: a).exitcode6Construct a succeeding exit code with the given value.1exitsuccess "abc" :: ExitcodeT Identity () String"ExitcodeT (Identity (Right "abc"))exitcode+Construct a succeeding exit code with unit.#exitsuccess0 :: ExitcodeT0 IdentityExitcodeT (Identity (Right ()))exitcode4Construct a failing exit code with the given status.ÅIf the given status is `0` then the exit code will succeed with unit.0exitfailure 'x' 99 :: ExitcodeT Identity Char ()$ExitcodeT (Identity (Left ('x',99)))exitcode4Construct a failing exit code with the given status.ÅIf the given status is `0` then the exit code will succeed with unit.exitcodeÉConstruct an exit code with the given status. Associate a value of type e2 with a failing exit code and a value of the type a with a success exit code.ÙIf the given status is `0` then the exit code will succeed with unit. >>> exitcodeValue xÈ 99 "abc" :: ExitcodeT Identity Char String ExitcodeT (Identity (Left (x,99))) >>> exitcodeValue xÎ 0 "abc" :: ExitcodeT Identity Char String ExitcodeT (Identity (Right "abc")) exitcode-Construct an exit code with the given status.ÅIf the given status is `0` then the exit code will succeed with unit.(exitcodeValue0 99 :: ExitcodeT0 Identity#ExitcodeT (Identity (Left ((),99)))'exitcodeValue0 0 :: ExitcodeT0 IdentityExitcodeT (Identity (Right ())) exitcodeFrom base exitcode.#fromExitCode (Identity ExitSuccess)ExitcodeT (Identity (Right ()))(fromExitCode (Identity (ExitFailure 99))#ExitcodeT (Identity (Left ((),99))) exitcodeFrom base exitcode.fromExitCode' ExitSuccessExitcodeT (Identity (Right ()))fromExitCode' (ExitFailure 99)#ExitcodeT (Identity (Left ((),99)))fromExitCode' (ExitFailure 0)ExitcodeT (Identity (Right ())) exitcodeËIsomorphism from base exitcode to underlying `Maybe (Either Int ())` where 4 is non-zero.)view exitCode (Identity (ExitFailure 99))3ExitcodeT (MaybeT (Identity (Just (Left ((),99)))))$view exitCode (Identity ExitSuccess)/ExitcodeT (MaybeT (Identity (Just (Right ()))))ÅControl.Lens.review exitCode (exitfailure () 99) :: Identity ExitCodeIdentity (ExitFailure 99)>Control.Lens.review exitCode exitsuccess0 :: Identity ExitCodeIdentity ExitSuccess exitcode7Extract either the non-zero value or the success value.;runExitcodeT exitsuccess0 :: Identity (Either ((), Int) ())Identity (Right ())ÂrunExitcodeT (exitfailure () 99) :: Identity (Either ((), Int) ())Identity (Left ((),99))exitcode%Extract either the non-zero value or 5.2runExitcodeT0 exitsuccess0 :: Identity (Maybe Int)Identity Nothing9runExitcodeT0 (exitfailure () 99) :: Identity (Maybe Int)Identity (Just 99)exitcode7Extract either the non-zero value or the success value./runExitcode exitsuccess0 :: Either ((), Int) ()Right ()6runExitcode (exitfailure () 99) :: Either ((), Int) () Left ((),99)exitcode%Extract either the non-zero value or 5.&runExitcode0 exitsuccess0 :: Maybe IntNothing-runExitcode0 (exitfailure () 99) :: Maybe IntJust 99exitcodeIsomorphism to integer.'view _ExitcodeInt exitsuccess0 :: [Int][0],view _ExitcodeInt (exitfailure0 99) :: [Int][99]review _ExitcodeInt [0]ExitcodeT [Right ()]review _ExitcodeInt [99]ExitcodeT [Left ((),99)]exitcodeSetter to integer.Åover _ExitcodeInt' (subtract 1) (exitsuccess0) :: ExitcodeT0 Identity#ExitcodeT (Identity (Left ((),-1)))Èover _ExitcodeInt' (subtract 1) (exitfailure0 99) :: ExitcodeT0 Identity#ExitcodeT (Identity (Left ((),98)))Çover _ExitcodeInt' (subtract 1) (exitfailure0 1) :: ExitcodeT0 IdentityExitcodeT (Identity (Right ()))exitcodeA traversal to exit failure.?preview _ExitFailure (exitfailure () 99 :: ExitcodeT0 Identity) Just ((),99):preview _ExitFailure (exitsuccess0 :: ExitcodeT0 Identity)NothingÙover _ExitFailure (\(e, n) -> (e + 1, n + 1)) (exitsuccess0 :: ExitcodeT Identity Int ())ExitcodeT (Identity (Right ()))çover _ExitFailure (\(e, n) -> (reverse e, n + 1)) (exitfailure "abc" 1 :: ExitcodeT Identity String ())%ExitcodeT (Identity (Left ("cba",2)))çover _ExitFailure (\(e, n) -> (reverse e, n - 1)) (exitfailure "abc" 1 :: ExitcodeT Identity String ())ExitcodeT (Identity (Right ()))exitcode.A traversal over the associated failing value.Êover _ExitFailureError reverse exitsuccess0 :: ExitcodeT Identity [Int] ()ExitcodeT (Identity (Right ()))Õover _ExitFailureError reverse (exitfailure "abc" 99) :: ExitcodeT Identity String ()&ExitcodeT (Identity (Left ("cba",99)))Ôover _ExitFailureError reverse (exitfailure "abc" 0) :: ExitcodeT Identity String ()ExitcodeT (Identity (Right ()))Äpreview _ExitFailureError (exitfailure () 99 :: ExitcodeT0 Identity)Just ()?preview _ExitFailureError (exitsuccess0 :: ExitcodeT0 Identity)NothingexitcodeA prism to exit success.-over _ExitSuccess (\x -> x) (exitfailure0 99)#ExitcodeT (Identity (Left ((),99))),over _ExitSuccess (\x -> x) (exitfailure0 0)ExitcodeT (Identity (Right ())),over _ExitSuccess (\x -> x) (exitfailure0 0)ExitcodeT (Identity (Right ()))(preview _ExitSuccess (exitfailure () 99)Nothing!preview _ExitSuccess exitsuccess0Just ()ÆControl.Lens.review _ExitSuccess "abc" :: ExitcodeT Identity () String"ExitcodeT (Identity (Right "abc"))exitcode1throwError 99 :: ExitcodeT (Either Int) () StringExitcodeT (Left 99)ËcatchError exitsuccess0 (exitfailure 'x') :: ExitcodeT (Either Int) Char ()ExitcodeT (Right (Right ()))ÖcatchError (exitfailure 'x' 99) (\_ -> exitsuccess0) :: ExitcodeT (Either Int) Char ()!ExitcodeT (Right (Left ('x',99)))ÓcatchError (exitfailure 'x' 99) (exitfailure 'y') :: ExitcodeT (Either Int) Char ()!ExitcodeT (Right (Left ('x',99)))ÌcatchError exitsuccess0 (\_ -> exitsuccess0) :: ExitcodeT (Either Int) () ()ExitcodeT (Right (Right ())) exitcode5writer ('x', "abc") :: ExitcodeT ((,) String) () CharExitcodeT ("abc",Right 'x')=listen (exitfailure 'x' 99 :: ExitcodeT ((,) String) Char ())ExitcodeT ("",Left ('x',99))8listen (exitsuccess 99 :: ExitcodeT ((,) String) () Int)ExitcodeT ("",Right (99,""))*tell "abc" :: ExitcodeT ((,) String) () ()ExitcodeT ("abc",Right ())Ãpass (exitsuccess ('x', reverse)) :: ExitcodeT ((,) String) () CharExitcodeT ("",Right 'x')Ïpass (('x', reverse) <$ (exitfailure 'x' 99 :: ExitcodeT ((,) String) Char ()))ExitcodeT ("",Left ('x',99))#exitcodeÇtraverse (\x -> x) [exitfailure 'x' 99] :: ExitcodeT Identity Char [()]$ExitcodeT (Identity (Left ('x',99)))Õtraverse (\x -> x) [exitfailure 'x' 99, exitsuccess0] :: ExitcodeT Identity Char [()]$ExitcodeT (Identity (Left ('x',99)))étraverse (\x -> x) [exitfailure 'x' 99, exitsuccess0, exitfailure 'y' 88] :: ExitcodeT Identity Char [()]$ExitcodeT (Identity (Left ('x',99)))Õtraverse (\x -> x) [exitsuccess0, exitfailure 'x' 88] :: ExitcodeT Identity Char [()]$ExitcodeT (Identity (Left ('x',88)))?traverse (\x -> x) [exitsuccess0] :: ExitcodeT Identity () [()]!ExitcodeT (Identity (Right [()]))+exitcodeÑduplicated (exitfailure () 0) :: ExitcodeT Identity () (ExitcodeT Identity () ())>ExitcodeT (Identity (Right (ExitcodeT (Identity (Right ())))))Òduplicated (exitfailure () 99) :: ExitcodeT Identity () (ExitcodeT Identity () ())ÂExitcodeT (Identity (Right (ExitcodeT (Identity (Left ((),99))))))Öduplicated (exitsuccess "abc") :: ExitcodeT Identity () (ExitcodeT Identity () String)ÁExitcodeT (Identity (Right (ExitcodeT (Identity (Right "abc"))))),exitcode&mempty :: ExitcodeT Identity () StringExitcodeT (Identity (Right ""))-exitcodeÆexitsuccess "abc" <> exitsuccess "def" :: ExitcodeT Identity () String%ExitcodeT (Identity (Right "abcdef"))Îexitsuccess "abc" <> exitcodeValue () 99 "def" :: ExitcodeT Identity () String"ExitcodeT (Identity (Right "abc"))ÑexitcodeValue 'x' 99 "abc" <> exitsuccess "def" :: ExitcodeT Identity Char String"ExitcodeT (Identity (Right "def"))ÚexitcodeValue 'x' 99 "abc" <> exitcodeValue 'y' 88 "def" :: ExitcodeT Identity Char String$ExitcodeT (Identity (Left ('y',88))).exitcodeÇexitsuccess "abc" exitsuccess "def" :: ExitcodeT Identity () String"ExitcodeT (Identity (Right "abc"))Ïexitsuccess "abc" exitcodeValue () 99 "def" :: ExitcodeT Identity () String"ExitcodeT (Identity (Right "abc"))ÒexitcodeValue 'x' 99 "abc" exitsuccess "def" :: ExitcodeT Identity Char String"ExitcodeT (Identity (Right "def"))ÛexitcodeValue 'x' 99 "abc" exitcodeValue 'y' 88 "def" :: ExitcodeT Identity Char String$ExitcodeT (Identity (Left ('y',88)))0exitcodeÓexitsuccess "abc" >>- \s -> exitsuccess (reverse s) :: ExitcodeT Identity () String"ExitcodeT (Identity (Right "cba"))Éexitsuccess "abc" >>- \_ -> exitfailure () 99 :: ExitcodeT Identity () ()#ExitcodeT (Identity (Left ((),99)))Ðexitfailure 'x' 99 >>- \_ -> exitsuccess "abc" :: ExitcodeT Identity Char String$ExitcodeT (Identity (Left ('x',99)))Íexitfailure 'x' 99 >>- \_ -> exitfailure 'y' 88 :: ExitcodeT Identity Char ()$ExitcodeT (Identity (Left ('x',99)))Élet loop = loop in exitfailure () 99 >>- loop :: ExitcodeT Identity () ()#ExitcodeT (Identity (Left ((),99)))    6      !"#$%&'()*+,-./0123456789:;<'exitcode-0.1.0.5-9mQAaWgvCFQH0HY9E956DFControl.Exitcode Exitcode0 ExitcodeT0Exitcode ExitcodeT exitsuccess exitsuccess0 exitfailure exitfailure0 exitcodeValueexitcodeValue0 fromExitCode fromExitCode'exitCode runExitcodeT runExitcodeT0 runExitcode runExitcode0 _ExitcodeInt _ExitcodeInt' _ExitFailure_ExitFailureError _ExitSuccess liftExitcodeliftExitcodeErrorliftExitcodeError0$fBitraversableExitcodeT$fBifoldableExitcodeT$fBifunctorExitcodeT$fMonadContExitcodeT$fMonadRWSrwsExitcodeT$fMonadErroreExitcodeT$fMonadStatesExitcodeT$fMonadWriterwExitcodeT$fMonadReaderrExitcodeT$fMonadIOExitcodeT$fTraversableExitcodeT$fFoldableExitcodeT$fShow1ExitcodeT$fShowExitcodeT$fOrd1ExitcodeT$fOrdExitcodeT$fEq1ExitcodeT $fEqExitcodeT$fExtendExitcodeT$fMonoidExitcodeT$fSemigroupExitcodeT$fAltExitcodeT$fMonadExitcodeT$fBindExitcodeT$fApplicativeExitcodeT$fApplyExitcodeT$fFunctorExitcodeTghc-prim GHC.TypesIntbase GHC.MaybeNothing