]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/deriving/InstanceDerivers.java
Added missing parts from SVN org.simantics.root project.
[simantics/platform.git] / bundles / org.simantics.scl.compiler / src / org / simantics / scl / compiler / internal / deriving / InstanceDerivers.java
1 package org.simantics.scl.compiler.internal.deriving;\r
2 \r
3 import gnu.trove.map.hash.THashMap;\r
4 \r
5 import org.simantics.scl.compiler.types.TCon;\r
6 import org.simantics.scl.compiler.types.Types;\r
7 \r
8 public class InstanceDerivers {\r
9     private static final THashMap<TCon, InstanceDeriver> MAP = \r
10             new THashMap<TCon, InstanceDeriver>();\r
11     \r
12     static {\r
13         MAP.put(Types.EQ, new EqDeriver());\r
14         MAP.put(Types.HASHABLE, new HashableDeriver());\r
15         MAP.put(Types.IO, new IODeriver());\r
16         MAP.put(Types.ORD, new OrdDeriver());\r
17         MAP.put(Types.SHOW, new ShowDeriver());\r
18     }\r
19     \r
20     public static InstanceDeriver get(TCon typeClass) {\r
21         return MAP.get(typeClass);\r
22     }\r
23 }\r