Maintainer | bastiaan.heeren@ou.nl |
---|---|
Stability | provisional |
Portability | portable (depends on ghc) |
Safe Haskell | None |
Language | Haskell98 |
This module describes the underlying mechanism for generating evidence given constraints over attributes.
Synopsis
- data EvBuilder a
- putAttributes :: [[Attribute]] -> EvBuilder ()
- updateVar :: String -> Expr -> EvBuilder ()
- getValueOf :: Expr -> EvBuilder Expr
- setValueOf :: Expr -> Expr -> EvBuilder ()
- storeEvidenceMaybe :: Maybe Evidence -> EvBuilder ()
- buildEvidence :: EvBuilder () -> [[Attribute]] -> Evidence
- newVar :: String -> EvBuilder Expr
- getAttributesPerStep :: EvBuilder [[Attribute]]
- getVariables :: EvBuilder (Map String Expr)
- putVariables :: Map String Expr -> EvBuilder ()
Documentation
Builder that consumes attributes and produces evidence. It Maintains a quadruple state:
- Evidence -- The generated evidence
- [[Attribute]] -- Remaining Attributes per step
- M.Map String Expr -- Maps variable names to expressions
Instances
Monad EvBuilder Source # | |
Functor EvBuilder Source # | |
Applicative EvBuilder Source # | |
Defined in Recognize.Model.EvidenceBuilder | |
Semigroup (EvBuilder a) Source # | |
Semigroup (Constraint EvBuilder a) Source # | |
Defined in Recognize.Model.Constraint (<>) :: Constraint EvBuilder a -> Constraint EvBuilder a -> Constraint EvBuilder a # sconcat :: NonEmpty (Constraint EvBuilder a) -> Constraint EvBuilder a # stimes :: Integral b => b -> Constraint EvBuilder a -> Constraint EvBuilder a # | |
Monoid (Constraint EvBuilder a) Source # | |
Defined in Recognize.Model.Constraint mempty :: Constraint EvBuilder a # mappend :: Constraint EvBuilder a -> Constraint EvBuilder a -> Constraint EvBuilder a # mconcat :: [Constraint EvBuilder a] -> Constraint EvBuilder a # |
putAttributes :: [[Attribute]] -> EvBuilder () Source #
Replaces the attributes in the state