Copyright | (c) Ivan Lazar Miljenovic |
---|---|
License | MIT |
Maintainer | Ivan.Miljenovic@gmail.com |
Safe Haskell | None |
Language | Haskell2010 |
- data WrappedTool proxy
- data Valid bt
- defaultTools :: [WrappedTool Proxy]
- withTool :: Config -> IO res -> (Env -> WrappedTool Valid -> IO res) -> [WrappedTool proxy] -> IO res
- chooseTool :: Env -> [WrappedTool proxy] -> IO (Maybe (WrappedTool Valid))
- toolName :: WrappedTool proxy -> String
- infoProjectDir :: WrappedTool Valid -> ProjectRoot
- data Env = Env {}
- getEnvironment :: Config -> IO Env
- data ToolEnv = ToolEnv {}
- toolEnv :: Config -> IO ToolEnv
- newtype Config = Config {}
- defaultConfig :: Config
- data Information = Information {}
- getInformation :: Config -> [WrappedTool proxy] -> IO Information
- prepare :: Env -> WrappedTool Valid -> IO ExitCode
- targets :: Env -> WrappedTool Valid -> IO [ProjectTarget]
- build :: Maybe ProjectTarget -> Env -> WrappedTool Valid -> IO ExitCode
- repl :: Args -> Maybe ProjectTarget -> Env -> WrappedTool Valid -> IO ExitCode
- clean :: Env -> WrappedTool Valid -> IO ExitCode
- test :: Env -> WrappedTool Valid -> IO ExitCode
- bench :: Env -> WrappedTool Valid -> IO ExitCode
- exec :: String -> Args -> Env -> WrappedTool Valid -> IO ExitCode
- run :: ProjectTarget -> Args -> Env -> WrappedTool Valid -> IO ExitCode
- update :: Env -> WrappedTool Valid -> IO ExitCode
Documentation
data WrappedTool proxy Source #
Eq (WrappedTool (Proxy *)) Source # | Not made polymorphic as there might be extra data contained within. |
Show (WrappedTool (Proxy *)) Source # | Not really a valid instance as it doesn't produce Haskell code. |
Show (WrappedTool ToolInformation) Source # | |
Show (WrappedTool Valid) Source # | |
ToJSON (WrappedTool ToolInformation) Source # | |
defaultTools :: [WrappedTool Proxy] Source #
withTool :: Config -> IO res -> (Env -> WrappedTool Valid -> IO res) -> [WrappedTool proxy] -> IO res Source #
chooseTool :: Env -> [WrappedTool proxy] -> IO (Maybe (WrappedTool Valid)) Source #
toolName :: WrappedTool proxy -> String Source #
System state/environment
Runtime configuration
Information/Diagnostics
data Information Source #
getInformation :: Config -> [WrappedTool proxy] -> IO Information Source #
Commands
targets :: Env -> WrappedTool Valid -> IO [ProjectTarget] Source #
build :: Maybe ProjectTarget -> Env -> WrappedTool Valid -> IO ExitCode Source #
run :: ProjectTarget -> Args -> Env -> WrappedTool Valid -> IO ExitCode Source #