Copyright | (c) Christian Maeder and Uni Bremen 2002-2005 |
---|---|
License | GPLv2 or higher, see LICENSE.txt |
Maintainer | Christian.Maeder@dfki.de |
Stability | provisional |
Portability | portable |
Safe Haskell | None |
analyse type declarations
Synopsis
- anaFormula :: Annoted Term -> State Env (Maybe (Annoted Term, Annoted Term))
- mapAnMaybe :: Monad m => (Annoted a -> m (Maybe b)) -> [Annoted a] -> m [Annoted b]
- anaTypeItems :: GenKind -> [Annoted TypeItem] -> State Env [Annoted TypeItem]
- dataPatToType :: DatatypeDecl -> State Env DataPat
- ana1Datatype :: Annoted DatatypeDecl -> State Env (Maybe DatatypeDecl)
- anaDatatype :: GenKind -> [DataPat] -> Annoted DatatypeDecl -> State Env (Maybe DatatypeDecl)
- addDataSen :: [DataPat] -> State Env ()
Documentation
anaFormula :: Annoted Term -> State Env (Maybe (Annoted Term, Annoted Term)) Source #
resolve and type check a formula
mapAnMaybe :: Monad m => (Annoted a -> m (Maybe b)) -> [Annoted a] -> m [Annoted b] Source #
lift a analysis function to annotated items
anaTypeItems :: GenKind -> [Annoted TypeItem] -> State Env [Annoted TypeItem] Source #
analyse annotated type items
dataPatToType :: DatatypeDecl -> State Env DataPat Source #
convert a data type with an analysed type pattern to a data pattern
ana1Datatype :: Annoted DatatypeDecl -> State Env (Maybe DatatypeDecl) Source #
pre-analyse a data type for anaDatatype
anaDatatype :: GenKind -> [DataPat] -> Annoted DatatypeDecl -> State Env (Maybe DatatypeDecl) Source #
analyse a pre-analysed data type given all data patterns of the type item