reset a3, kut Charlie ;)
[tt2015.git] / a3 / code / Generics / GenDefault.icl
1 implementation module GenDefault
2
3 //import StdClass, StdArray, StdInt, StdFunc
4 import StdGeneric
5
6 generic gDefault a :: a
7 gDefault{|Int|} = 0
8 gDefault{|Real|} = 0.0
9 gDefault{|String|} = ""
10 gDefault{|UNIT|} = UNIT
11 gDefault{|EITHER|} dl dr = RIGHT dr
12 gDefault{|EITHER|} dl dr = LEFT dl
13 gDefault{|PAIR|} dl dr = PAIR dl dr
14 gDefault{|CONS|} dc = CONS dc
15 gDefault{|FIELD|} df = FIELD df
16 gDefault{|OBJECT|} do = OBJECT do
17
18 derive gDefault [], (,), (,,), (,,,), (,,,,), (,,,,,), (,,,,,,), (,,,,,,,)
19