1 package org.simantics.scl.compiler.internal.deriving;
\r
3 import org.simantics.scl.compiler.types.TCon;
\r
4 import org.simantics.scl.compiler.types.Types;
\r
6 import gnu.trove.map.hash.THashMap;
\r
8 public class InstanceDerivers {
\r
9 private static final THashMap<TCon, InstanceDeriver> MAP =
\r
10 new THashMap<TCon, InstanceDeriver>();
\r
13 MAP.put(Types.IO, new IODeriver());
\r
14 MAP.put(Types.ORD, new OrdDeriver());
\r
15 MAP.put(Types.SHOW, new ShowDeriver());
\r
18 public static InstanceDeriver get(TCon typeClass) {
\r
19 return MAP.get(typeClass);
\r