Copyright | Christian Maeder and Uni Bremen 2002-2006 |
---|---|
License | GPLv2 or higher, see LICENSE.txt |
Maintainer | Christian.Maeder@dfki.de |
Stability | experimental |
Portability | portable |
Safe Haskell | None |
Mixfix analysis of terms
- resolveFormula :: FormExtension f => (f -> f) -> MixResolve f -> MixResolve (FORMULA f)
- resolveMixfix :: FormExtension f => (f -> f) -> MixResolve f -> MixResolve (TERM f)
- type MixResolve f = GlobalAnnos -> (TokRules, Rules) -> f -> Result f
- resolveMixTrm :: FormExtension f => (f -> f) -> MixResolve f -> MixResolve (TERM f)
- resolveMixFrm :: FormExtension f => (f -> f) -> MixResolve f -> MixResolve (FORMULA f)
- extendRules :: Set Token -> (TokRules, Rules) -> (TokRules, Rules)
- varDeclTokens :: [VAR_DECL] -> Set Token
- extendMixResolve :: Set Token -> MixResolve f -> MixResolve f
- type IdSets = ((Set Id, Set Id), Set Id)
- mkIdSets :: Set Id -> Set Id -> Set Id -> IdSets
- emptyIdSets :: IdSets
- unite :: [IdSets] -> IdSets
- unite2 :: [(Set Id, Set Id)] -> (Set Id, Set Id)
- makeRules :: GlobalAnnos -> IdSets -> (TokRules, Rules)
- data Mix b s f e = MixRecord {
- getBaseIds :: b -> IdSets
- getSigIds :: s -> IdSets
- getExtIds :: e -> IdSets
- mixRules :: (TokRules, Rules)
- putParen :: f -> f
- mixResolve :: MixResolve f
- emptyMix :: Mix b s f e
- extendMix :: Set Token -> Mix b s f e -> Mix b s f e
- ids_BASIC_SPEC :: (b -> IdSets) -> (s -> IdSets) -> BASIC_SPEC b s f -> IdSets
- ids_SIG_ITEMS :: (s -> IdSets) -> SIG_ITEMS s f -> IdSets
- ids_OP_ITEM :: OP_ITEM f -> (Set Id, Set Id)
- ids_PRED_ITEM :: PRED_ITEM f -> Set Id
- ids_DATATYPE_DECL :: DATATYPE_DECL -> (Set Id, Set Id)
- addIdToRules :: Id -> (TokRules, Rules) -> (TokRules, Rules)
Documentation
resolveFormula :: FormExtension f => (f -> f) -> MixResolve f -> MixResolve (FORMULA f)
top-level resolution like resolveMixFrm
that fails in case of diags
resolveMixfix :: FormExtension f => (f -> f) -> MixResolve f -> MixResolve (TERM f)
top-level resolution like resolveMixTrm
that fails in case of diags
type MixResolve f = GlobalAnnos -> (TokRules, Rules) -> f -> Result f
the type for mixfix resolution
resolveMixTrm :: FormExtension f => (f -> f) -> MixResolve f -> MixResolve (TERM f)
basic term resolution that supports recursion without failure
resolveMixFrm :: FormExtension f => (f -> f) -> MixResolve f -> MixResolve (FORMULA f)
basic formula resolution that supports recursion without failure
varDeclTokens :: [VAR_DECL] -> Set Token
extendMixResolve :: Set Token -> MixResolve f -> MixResolve f
the empty IdSets
makeRules :: GlobalAnnos -> IdSets -> (TokRules, Rules)
data Mix b s f e
MixRecord | |
|
ids_BASIC_SPEC :: (b -> IdSets) -> (s -> IdSets) -> BASIC_SPEC b s f -> IdSets
get all ids of a basic spec
ids_SIG_ITEMS :: (s -> IdSets) -> SIG_ITEMS s f -> IdSets
get all ids of a sig items
ids_PRED_ITEM :: PRED_ITEM f -> Set Id
get all pred ids of a pred item
ids_DATATYPE_DECL :: DATATYPE_DECL -> (Set Id, Set Id)