XN"      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ Safe nSafe6 3  recursive ? Recursive?   Safe"#  +,-./0123456789:+,-./0123456789:  Safe None&'6YAny IO action can be part of a > action.5This is the most important instance for the end user. liftIO :: IO a -> Zift a/allows embedding arbitrary IO actions inside a > action.;The implementation also ensures that exceptions are caught.ZA > action can fail.,To make a Zift action fail, you can use the fail :: String -> Zift a function.bThe implementation uses the given string as the message that is shown at the very end of the run.[> actions can be composed.\> actions can be sequenced.DThe implementation automatically parallelises the arguments of the ( *)U function. If any of the actions fails, the other is cancelled and the result fails.;=<>FEDCBA@?GIHJKPONMLQRTSUV*UVQRSTJKLMNOPGHIW>?@ABCDEF^]\[ZYX;<=dcba`_;<=>?@ABCDEFGHIJKLMNOPQRSTUVNone:rGet the root directory of the zift.hs script that is being executed.s#Get the temporary directory of the zift.hs script that is being executed.6To persist any state between runs, use this directory.t Get all the uGet a single settingvDeclare a given list of ># actions to be execute in parallel.wLike mapA, but specialised to > and '[]', and ensures that the output of actions is printed in the right order, even if they are executed in an arbitrary order.xLike mapA_, but specialised to > and '[]', and ensures that the output of actions is printed in the right order, even if they are executed in an arbitrary order.yLike for, but specialised to > and '[]', and ensures that the output of actions is printed in the right order, even if they are executed in an arbitrary order.zLike for_, but specialised to >Q and '[]', and ensures that the output of actions is printed in the right order.{5Print a message (with a newline appended to the end).|Print a message (with a newline appended to the end), in the standard zift script color. This is the function that the zift script uses to output information about the stages of the zift script run.}oPrint a message (with a newline appended to the end) that signifies that a part of the processing is now done.Example: mdoThingZift :: Zift () doThingZift = do doThing printProcessingDone "doThing completed successfully."~Print a message (with a newline appended to the end) that signifies that a part of the processing failed. This message will not cause the zift script run to fail.Example: ~doDangerousThing :: Zift () doDangerousThing = do errOrResult <- doThing case errOrResult of Left err -> printPreprocessingError $ unwords ["doThing failed with error:", err] fail "doThing failed." Right result -> do printPreprocessingDone unwords ["doThing succeeded with result:", result]HPrint a message (with a newline appended to the end) with custom colors.See the  1https://hackage.haskell.org/package/ansi-terminal ansi-terminal package for more details.,;<=>?@ABCDEFGHIJKLMNOPQRSTUVrstuvwxyz{|}~rstuvwxyz{|}~None6< None<None6<None?J*Add a given zift action as a preprocessor.(Add a given zift action as a prechecker.%Add a given zift action as a checker.NoneDRecursively call each zift.hsK script in the directories below the directory of the currently executing zift.hs script.Only the topmost zift.hsH script in each directory is executed. This means that, to execute all zift.hs% scripts recursively, each of those zift.hs scripts must also have a  declaration. None "#&'6VLyRun a  to create the , and then use  ,ziftWith = renderZiftSetup >=> ziftWithSetupBuild a zifter using a .;A zifter has the capabilities that you would expect from a  'zift.hs' file: zift.hs run: Run the zift.hs script as a pre-commit hook.zift.hs preprocess: Run the preprocessorzift.hs precheck: Run the prechecker zift.hs check: Run the checkerzift.hs install: Install the zift.hs script as a pre-commit hook..>rstuvwxyz{|}~.vwxyz>rstu{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVVWXYZ[\\]^__`abcdefghijklmnopqrstuvwxyz{|}~           %zifter-0.0.1.6-I0Wu9n3BFZIGTS85x2GK39 Zifter.ZiftZifter.OptParse.TypesZifter.OptParseZifter.Zift.TypesZifter.Setup.TypesZifter.Script.Types Zifter.ScriptZifter.RecurseZifter Paths_zifter Zifter.Types Zifter.SetupbaseControl.Monad.IO.ClassliftIO OutputMode OutputLinear OutputFastSettingssetsOutputColorsetsOutputModeDispatch DispatchRunDispatchInstallDispatchPreProcessDispatchPreCheck DispatchCheck ConfigurationFlagsflagsOutputColorflagsOutputModeCommand CommandRunCommandInstallCommandPreProcessCommandPreCheck CommandCheck Instructions Arguments $fShowCommand $fEqCommand$fShowConfiguration$fEqConfiguration$fShowDispatch $fEqDispatch$fGenericDispatch$fShowOutputMode$fEqOutputMode$fGenericOutputMode$fShowSettings $fEqSettings$fGenericSettings $fShowFlags $fEqFlagsgetInstructionscombineToInstructionsgetConfiguration getArgumentsrunArgumentsParser argParser parseArgs parseCommandparseCommandRunparseCommandPreProcessparseCommandPreCheckparseCommandCheckparseCommandInstall parseFlags doubleSwitchoutputModeFlag ZiftResult ZiftSuccess ZiftFailedZiftZiftPureZiftCtx ZiftPrintZiftFailZiftIOZiftFmapZiftAppZiftBindLRLR ZiftContextrootdirtmpdirsettings printChan recursionList ZiftOutput outputColors outputMessage ZiftToken$fValidityZiftContext$fMonadThrowZift $fMonadIOZift$fMonadFailZift $fMonadZift$fApplicativeZift $fFunctorZift $fMonoidZift$fMonadFailZiftResult$fMonadZiftResult$fApplicativeZiftResult$fFunctorZiftResult$fMonoidZiftResult$fValidityZiftResult$fShowZiftOutput$fEqZiftOutput$fGenericZiftOutput$fShowLR$fEqLR $fGenericLR$fShowZiftToken $fEqZiftToken$fGenericZiftToken$fGenericZiftContext$fShowZiftResult$fEqZiftResult$fGenericZiftResult getRootDir getTmpDir getSettings getSettingziftPmapZmapZ_forZforZ_ printZiftprintZiftMessageprintPreprocessingDoneprintPreprocessingErrorprintWithColors addZiftOutput ZiftSetupziftPreprocessorziftPreChecker ziftChecker$fMonoidZiftSetup$fGenericZiftSetup ZiftScriptrenderZiftScriptrenderZiftSetup$fMonadZiftScript$fApplicativeZiftScript$fFunctorZiftScript$fGenericZiftScript preprocessor precheckerchecker recursiveZift recursivelyhiddenInBuf BufNotReadyBufReady LinearState LinearUnknown LinearLeaf LinearDone LinearBranchziftWith ziftWithSetup runZiftAutorunZift ziftRunner outputPrinter prettyToken prettyState processTokenaddState flushState pruneState flushStateAll $fMonoidBuf$fShowOutputSets$fEqOutputSets$fShowLinearState$fEqLinearState$fGenericLinearState $fShowBuf$fEqBuf $fGenericBufversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName OutputSets outputColor outputMode