module SuperUserSpark ( spark ) where import Import import SuperUserSpark.Bake import SuperUserSpark.Check import SuperUserSpark.Compiler import SuperUserSpark.Deployer import SuperUserSpark.Diagnose import SuperUserSpark.OptParse import SuperUserSpark.Parser spark :: IO () spark = getDispatch >>= dispatch dispatch :: Dispatch -> IO () dispatch (DispatchParse pas) = parseFromArgs pas dispatch (DispatchCompile cas) = compileFromArgs cas dispatch (DispatchBake bas) = bakeFromArgs bas dispatch (DispatchDiagnose bas) = diagnoseFromArgs bas dispatch (DispatchCheck cas) = checkFromArgs cas dispatch (DispatchDeploy das) = deployFromArgs das