1
0
forked from GitHub/gf-core

Finnish close to production ; Predef.occurs

This commit is contained in:
aarne
2005-06-26 19:40:31 +00:00
parent 5d6bb705e6
commit b9e13711db
3 changed files with 8 additions and 7 deletions

View File

@@ -63,8 +63,8 @@ mkCncGroups (res,files) = do
putStrLnFlush $ "Going to preprocess examples in " ++ unwords files putStrLnFlush $ "Going to preprocess examples in " ++ unwords files
putStrLn $ "Compiling resource " ++ res putStrLn $ "Compiling resource " ++ res
egr <- appIOE $ egr <- appIOE $
optFile2grammar (options optFile2grammar (options [beSilent]) res
[useOptimizer "share",fromSource,beSilent,notEmitCode]) res --- for -mcfg -- [useOptimizer "share",fromSource,beSilent,notEmitCode]) res --- for -mcfg
gr <- err (\s -> putStrLn s >> error "resource file rejected") return egr gr <- err (\s -> putStrLn s >> error "resource file rejected") return egr
let parser cat = errVal ([],"No parse") . let parser cat = errVal ([],"No parse") .
optParseArgErrMsg (options [newMParser, firstCat cat, beVerbose]) gr optParseArgErrMsg (options [newMParser, firstCat cat, beVerbose]) gr

View File

@@ -5,9 +5,9 @@
-- Stability : (stable) -- Stability : (stable)
-- Portability : (portable) -- Portability : (portable)
-- --
-- > CVS $Date: 2005/04/21 16:22:19 $ -- > CVS $Date: 2005/06/26 20:40:33 $
-- > CVS $Author: bringert $ -- > CVS $Author: aarne $
-- > CVS $Revision: 1.11 $ -- > CVS $Revision: 1.12 $
-- --
-- Predefined function type signatures and definitions. -- Predefined function type signatures and definitions.
----------------------------------------------------------------------------- -----------------------------------------------------------------------------
@@ -41,6 +41,7 @@ typPredefined c@(IC f) = case f of
"eqStr" -> return $ mkFunType [typeTok,typeTok] (cnPredef "PBool") "eqStr" -> return $ mkFunType [typeTok,typeTok] (cnPredef "PBool")
"length" -> return $ mkFunType [typeTok] (cnPredef "Int") "length" -> return $ mkFunType [typeTok] (cnPredef "Int")
"occur" -> return $ mkFunType [typeTok,typeTok] (cnPredef "PBool") "occur" -> return $ mkFunType [typeTok,typeTok] (cnPredef "PBool")
"occurs" -> return $ mkFunType [typeTok,typeTok] (cnPredef "PBool")
"plus" -> return $ mkFunType [cnPredef "Int",cnPredef "Int"] (cnPredef "Int") "plus" -> return $ mkFunType [cnPredef "Int",cnPredef "Int"] (cnPredef "Int")
---- "read" -> (P : Type) -> Tok -> P ---- "read" -> (P : Type) -> Tok -> P
"show" -> return $ mkProd -- (P : PType) -> P -> Tok "show" -> return $ mkProd -- (P : PType) -> P -> Tok
@@ -77,6 +78,7 @@ appPredefined t = case t of
("dp", EInt i, K s) -> retb $ K (drop (max 0 (length s - i)) s) ("dp", EInt i, K s) -> retb $ K (drop (max 0 (length s - i)) s)
("eqStr",K s, K t) -> retb $ if s == t then predefTrue else predefFalse ("eqStr",K s, K t) -> retb $ if s == t then predefTrue else predefFalse
("occur",K s, K t) -> retb $ if substring s t then predefTrue else predefFalse ("occur",K s, K t) -> retb $ if substring s t then predefTrue else predefFalse
("occurs",K s, K t) -> retb $ if any (flip elem t) s then predefTrue else predefFalse
("eqInt",EInt i, EInt j) -> retb $ if i==j then predefTrue else predefFalse ("eqInt",EInt i, EInt j) -> retb $ if i==j then predefTrue else predefFalse
("lessInt",EInt i, EInt j) -> retb $ if i<j then predefTrue else predefFalse ("lessInt",EInt i, EInt j) -> retb $ if i<j then predefTrue else predefFalse
("plus", EInt i, EInt j) -> retb $ EInt $ i+j ("plus", EInt i, EInt j) -> retb $ EInt $ i+j

View File

@@ -113,9 +113,8 @@ today:
tools/mktoday.sh $(PACKAGE_VERSION) tools/mktoday.sh $(PACKAGE_VERSION)
javac: javac:
$(JAVAC) $(JAVAFLAGS) JavaGUI/*.java
$(JAVAC) $(JAVAFLAGS) -classpath $(GFEDITOR):$(GFEDITOR)/log4j-1.2.8.jar:$(GFEDITOR)/jargs-1.0.jar $(GFEDITOR)/de/uka/ilkd/key/ocl/gf/*.java $(JAVAC) $(JAVAFLAGS) -classpath $(GFEDITOR):$(GFEDITOR)/log4j-1.2.8.jar:$(GFEDITOR)/jargs-1.0.jar $(GFEDITOR)/de/uka/ilkd/key/ocl/gf/*.java
$(JAVAC) $(JAVAFLAGS) JavaGUI/*.java
jar: javac jar: javac
cd JavaGUI; $(JAR) -cmf manifest.txt gf-java.jar *.class ; cd .. cd JavaGUI; $(JAR) -cmf manifest.txt gf-java.jar *.class ; cd ..