claferIG-0.3.5.1: claferIG is an interactive tool that generates instances of Clafer models.

Safe HaskellNone

Language.Clafer.IG.ClaferIG

Documentation

data IGArgs Source

Constructors

IGArgs 

Fields

all :: Maybe Integer
 
saveDir :: Maybe FilePath
 
claferModelFile :: FilePath
 
alloySolution :: Bool
 
bitwidth :: Integer
 
maxInt :: Integer
 
useUids :: Bool
 
addTypes :: Bool
 
json :: Bool
 
flatten_inheritance_comp :: Bool
 
no_layout_comp :: Bool
 
check_duplicates_comp :: Bool
 
skip_resolver_comp :: Bool
 
scope_strategy_comp :: ScopeStrategy
 

Instances

data ClaferIGEnv Source

Constructors

ClaferIGEnv 

Fields

claferEnv' :: ClaferEnv
 
claferIGArgs :: IGArgs
 
constraints :: [Constraint]
 
claferModel :: String
 
qNameMaps :: QNameMaps
 
info :: Info
 
strMap :: Map Int String
 
lineNumMap :: Map Integer String
 

getClaferModel :: Monad m => ClaferIGT m StringSource

getInfo :: Monad m => ClaferIGT m InfoSource

getStrMap :: Monad m => ClaferIGT m (Map Int String)Source

newtype ClaferIGT m a Source

Constructors

ClaferIGT (StateT ClaferIGEnv (AlloyIGT m) a) 

Instances

MonadTrans ClaferIGT 
Monad m => Monad (ClaferIGT m) 
Functor m => Functor (ClaferIGT m) 
(Monad m, Functor m) => Applicative (ClaferIGT m) 
MonadIO m => MonadIO (ClaferIGT m) 
MonadException m => MonadException (ClaferIGT m) 

runClaferIGT :: MonadIO m => IGArgs -> ClaferIGT m a -> m (Either ClaferErrs a)Source

setGlobalScope :: MonadIO m => Integer -> ClaferIGT m ()Source

getScopes :: MonadIO m => ClaferIGT m [(String, Integer)]Source

getScope :: MonadIO m => QName -> ClaferIGT m [String]Source

valueOfScope :: MonadIO m => String -> ClaferIGT m IntegerSource

increaseScope :: MonadIO m => Integer -> (String, Integer) -> ClaferIGT m (Either String ())Source

setScope :: MonadIO m => Integer -> (String, Integer) -> ClaferIGT m (Either String ())Source

setAlloyScope :: MonadIO m => Integer -> String -> ClaferIGT m (Either String ())Source

setBitwidth :: MonadIO m => Integer -> ClaferIGT m ()Source

getlineNumMap :: Monad m => ClaferIGT m (Map Integer String)Source

strictReadFile :: FilePath -> IO StringSource

sigToClaferName :: String -> StringSource