This commit is contained in:
Joey Hess 2010-10-25 15:46:53 -04:00
parent 7fe4bfa20f
commit 1f3088fb94

View file

@ -25,17 +25,17 @@ import qualified Remotes
import qualified TypeInternals import qualified TypeInternals
{- A subcommand runs in three stages. Each stage can return the next stage {- A subcommand runs in three stages. Each stage can return the next stage
- to run. - to run.
- -
- 1. The start stage is run before anything is printed about the - 1. The start stage is run before anything is printed about the
- subcommand, and can early abort it if the input does not make sense. - subcommand, and can early abort it if the input does not make sense.
- It should run quickly and should not modify Annex state. - It should run quickly and should not modify Annex state.
- -
- 2. The perform stage is run after a message is printed about the subcommand - 2. The perform stage is run after a message is printed about the subcommand
- being run. - being run, and it should be where the bulk of the work happens.
- -
- 3. The cleanup stage is run only if the do stage succeeds, and it returns - 3. The cleanup stage is run only if the perform stage succeeds, and it
- the overall success/fail of the subcommand. - returns the overall success/fail of the subcommand.
-} -}
type SubCmdStart = String -> Annex (Maybe SubCmdPerform) type SubCmdStart = String -> Annex (Maybe SubCmdPerform)
type SubCmdPerform = Annex (Maybe SubCmdCleanup) type SubCmdPerform = Annex (Maybe SubCmdCleanup)