| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Dojang.Types.EnvironmentPredicate.Evaluate
Synopsis
- data EvaluationWarning
- evaluate :: Environment -> MonikerMap -> EnvironmentPredicate -> (Bool, [EvaluationWarning])
- evaluate' :: Environment -> MonikerResolver -> EnvironmentPredicate -> (Bool, [EvaluationWarning])
Documentation
data EvaluationWarning Source #
A warning that occurred during evaluation.
Constructors
| UndefinedMoniker MonikerName | A moniker was referenced that was not defined. |
| UnrecognizedOperatingSystem OperatingSystem | The operating system was not recognized. |
| UnrecognizedArchitecture Architecture | The architecture was not recognized. |
Instances
| Show EvaluationWarning Source # | |
Defined in Dojang.Types.EnvironmentPredicate.Evaluate Methods showsPrec :: Int -> EvaluationWarning -> ShowS # show :: EvaluationWarning -> String # showList :: [EvaluationWarning] -> ShowS # | |
| Eq EvaluationWarning Source # | |
Defined in Dojang.Types.EnvironmentPredicate.Evaluate Methods (==) :: EvaluationWarning -> EvaluationWarning -> Bool # (/=) :: EvaluationWarning -> EvaluationWarning -> Bool # | |
Arguments
| :: Environment | The |
| -> MonikerMap | The |
| -> EnvironmentPredicate | The |
| -> (Bool, [EvaluationWarning]) | The result of the evaluation. The |
Evaluates the given predicate against the given environment.
>>>import Dojang.Types.Environment (Environment (..))>>>import Dojang.Types.MonikerMap (MonikerMap)>>>import Dojang.Types.MonikerName (MonikerName, parseMonikerName)>>>let (Right linuxAmd64) = parseMonikerName "linux-amd64">>>:{let monikerMap = [ (linuxAmd64, And [OperatingSystem "linux", Architecture "x86_64"]) ] :: MonikerMap :}
>>>let environment = Environment "linux" "x86_64">>>evaluate environment monikerMap (OperatingSystem "linux")(True,[])>>>evaluate environment monikerMap (Architecture "aarch64")(False,[])
The snd of the result is a list of warnings that occurred during
evaluation:
>>>let (Right nonExistentMoniker) = parseMonikerName "non-existent">>>evaluate environment monikerMap (Moniker nonExistentMoniker)(False,[UndefinedMoniker (MonikerName "non-existent")])
Arguments
| :: Environment | The |
| -> MonikerResolver | A function that resolves |
| -> EnvironmentPredicate | The |
| -> (Bool, [EvaluationWarning]) | The result of the evaluation. The |
Same as evaluate, but takes a resolver function instead of a
MonikerMap.