Copyright | (c) Daniel Calegari Universidad de la Republica Uruguay 2013 |
---|---|
License | GPLv2 or higher, see LICENSE.txt |
Maintainer | dcalegar@fing.edu.uy |
Stability | provisional |
Portability | portable |
Safe Haskell | Safe |
Documentation
basicAna :: (Transformation, Sign, GlobalAnnos) -> Result (Transformation, ExtSign Sign (), [Named Sen]) Source #
buildSignature :: Transformation -> (Sign, [Diagnosis]) Source #
buildRelations :: Sign -> Sign -> [Relation] -> ((Map String RuleDef, Map String RuleDef), [Diagnosis]) Source #
createRuleDef :: Sign -> Sign -> Relation -> (Map String RuleDef, [Diagnosis]) -> (Map String RuleDef, [Diagnosis]) Source #
getTypesFromVars :: Sign -> Sign -> [PrimitiveDomain] -> Domain -> Domain -> ([TypeClass], [Diagnosis]) Source #
getPrimitiveDomainType :: Sign -> Sign -> PrimitiveDomain -> (Maybe TypeClass, [Diagnosis]) Source #
getSomething :: [Maybe a] -> [a] Source #
buildSentences :: Sign -> Transformation -> ([Named Sen], [Diagnosis]) Source #
propKeysCheckOK :: Sign -> String -> [PropKey] -> Bool Source #
propKeyCheckOK :: Sign -> String -> PropKey -> Bool Source #
findPropertyByTypeAndRole :: [PropertyT] -> [String] -> String -> Bool Source #
superClasses :: Rel String -> String -> Set String Source #
findPropertyInHierarchy :: Rel TypeClass -> Set PropertyT -> String -> String -> Maybe PropertyT Source #
findPropertyElemByTypeAndRole :: [PropertyT] -> [String] -> String -> Maybe PropertyT Source #
findOppPropertyByTypeAndRole :: [PropertyT] -> [String] -> String -> String -> Bool Source #
getTargetType :: String -> PropertyT -> String Source #
getOppositeType :: String -> PropertyT -> String Source #
buildRules :: Sign -> (String, String, Metamodel) -> (String, String, Metamodel) -> [Relation] -> ([Named Sen], [Diagnosis]) Source #
checkRules :: Sign -> (String, String, Metamodel) -> (String, String, Metamodel) -> [Relation] -> ([RelationSen], [Diagnosis]) Source #
checkRule :: Sign -> (String, String, Metamodel) -> (String, String, Metamodel) -> Relation -> ([RelationSen], [Diagnosis]) Source #
collectParSet :: [PrimitiveDomain] -> Domain -> Domain -> [RelVar] Source #
collectVarSet :: [RelVar] -> [PrimitiveDomain] -> Domain -> Domain -> [RelVar] Source #
collectPrimDomVarSet :: [PrimitiveDomain] -> [RelVar] Source #
collectDomainVarSet :: Domain -> [RelVar] Source #
collectRecursiveVars :: Maybe ObjectTemplate -> [RelVar] Source #
collectRecursiveRelInvoc :: String -> String -> [PropertyTemplate] -> Sign -> [RelVar] -> ([(PropertyT, RelVar, RelVar)], [Diagnosis]) Source #
getVarFromTemplate :: PropertyTemplate -> [RelVar] -> Maybe RelVar Source #
findVarFromName :: String -> [RelVar] -> Maybe RelVar Source #
collectRecursivePreds :: [RelVar] -> Maybe ObjectTemplate -> [(String, String, OCL)] Source #
getOclExpre :: String -> [RelVar] -> PropertyTemplate -> [(String, String, OCL)] Source #
getObjectTemplates :: Domain -> [ObjectTemplate] Source #
getOT :: [PropertyTemplate] -> [ObjectTemplate] Source #