| Copyright | (c) 2022 Dmitrii Kovanikov |
|---|---|
| License | MPL-2.0 |
| Maintainer | Dmitrii Kovanikov <kovanikov@gmail.com> |
| Stability | Experimental |
| Portability | Portable |
| Safe Haskell | Safe-Inferred |
| Language | Haskell2010 |
Iris.Tool
Description
Utilities to check required tools and their minimal version for a CLI app.
Since: 0.0.0.0
Synopsis
- data Tool cmd = Tool {
- toolName :: Text
- toolSelector :: Maybe (ToolSelector cmd)
- data ToolSelector cmd = ToolSelector {
- toolSelectorFunction :: cmd -> Text -> Bool
- toolSelectorVersionArg :: Maybe Text
- defaultToolSelector :: ToolSelector cmd
- data ToolCheckResult
- checkTool :: cmd -> Tool cmd -> IO ToolCheckResult
Types describing executable requirements
Since: 0.0.0.0
Constructors
| Tool | |
Fields
| |
data ToolSelector cmd Source #
Since: 0.0.0.0
Constructors
| ToolSelector | |
Fields
| |
defaultToolSelector :: ToolSelector cmd Source #
Since: 0.0.0.0
Tool requirements check
data ToolCheckResult Source #
Since: 0.0.0.0
Constructors
| ToolNotFound Text | Since: 0.0.0.0 |
| ToolWrongVersion Text | Since: 0.0.0.0 |
| ToolOk | Since: 0.0.0.0 |
Instances
| Show ToolCheckResult Source # | Since: 0.0.0.0 |
Defined in Iris.Tool Methods showsPrec :: Int -> ToolCheckResult -> ShowS # show :: ToolCheckResult -> String # showList :: [ToolCheckResult] -> ShowS # | |
| Eq ToolCheckResult Source # | Since: 0.0.0.0 |
Defined in Iris.Tool Methods (==) :: ToolCheckResult -> ToolCheckResult -> Bool # (/=) :: ToolCheckResult -> ToolCheckResult -> Bool # | |