reset a3, kut Charlie ;)
[tt2015.git] / a3 / code / Gast / genLibTest.dcl
diff --git a/a3/code/Gast/genLibTest.dcl b/a3/code/Gast/genLibTest.dcl
new file mode 100644 (file)
index 0000000..770f2ee
--- /dev/null
@@ -0,0 +1,35 @@
+definition module genLibTest\r
+\r
+/*\r
+       GAST: A Generic Automatic Software Test-system\r
+       \r
+       genLibtest: library for generic testing: showing and comparing values\r
+\r
+       Pieter Koopman, 2004\r
+       Radboud Universty, Nijmegen\r
+       The Netherlands\r
+       pieter@cs.ru.nl\r
+*/\r
+\r
+import StdGeneric, GenEq\r
+\r
+import StdClass\r
+instance + String\r
+\r
+(@) infixl 2 :: (a->b)  a -> b\r
+(@!)infixl 2 :: (a->b) !a -> b\r
+\r
+generic genShow a :: String Bool a [String] -> [String]\r
+generic gLess a  :: a a -> Bool\r
+\r
+derive genShow Int, Char, Bool, Real, String, UNIT, PAIR, EITHER, OBJECT, CONS, FIELD, [], (,), (,,), (,,,), (,,,,), (,,,,,), (,,,,,,), (,,,,,,,), (,,,,,,,,), (,,,,,,,,,), (->), {}, {!}\r
+derive gLess    Int, Char, Bool, Real, String, UNIT, PAIR, EITHER, OBJECT, CONS, FIELD, [], (,), (,,), (,,,), (,,,,), (,,,,,), (,,,,,,), (,,,,,,,), (,,,,,,,,), (,,,,,,,,,) \r
+\r
+show  :: !a -> [String] | genShow{|*|} a\r
+show1 :: !a ->  String  | genShow{|*|} a\r
+\r
+(-<-) infix 4 :: !a !a -> Bool | gLess{|*|} a\r
+(->-) infix 4 :: !a !a -> Bool | gLess{|*|} a\r
+(-<=) infix 4 :: !a !a -> Bool | gLess{|*|} a\r
+(=>-) infix 4 :: !a !a -> Bool | gLess{|*|} a\r
+\r