X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Finternal%2Ftypes%2Feffects%2FEffectIdMap.java;h=8ba0e6783a149aecd08fe9281063bf6d7b9b9cc3;hp=4168fff931241574484b794ce94e40fe4de043b0;hb=3d043320cdee8dda92758f4ea1c324a82c7d9094;hpb=e3ee31da93393a7338ebfbc71620d124eedea946 diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/types/effects/EffectIdMap.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/types/effects/EffectIdMap.java index 4168fff93..8ba0e6783 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/types/effects/EffectIdMap.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/types/effects/EffectIdMap.java @@ -17,19 +17,17 @@ public class EffectIdMap { public static final int MAX = 0xffffffff; private static final int FIRST_FREE_EFFECT_ID = 16; - private static ArrayList effectCons = new ArrayList(); - private static TObjectIntHashMap effectCodes = new TObjectIntHashMap(); + private static ArrayList EFFECT_CONS = new ArrayList(); + private static TObjectIntHashMap EFFECT_CODES = new TObjectIntHashMap(); - private static void add(String module, String name, int code) { - TCon con = Types.con(module, name); - effectCodes.put(con, code); - effectCons.add(con); + private static void add(TCon con, int code) { + EFFECT_CODES.put(con, code); + EFFECT_CONS.add(con); } static { - add("Simantics/DB", "WriteGraph", 12); - add("Simantics/DB", "ReadGraph", 4); - add(Types.BUILTIN, "Proc", 1); + add(Types.WRITE_GRAPH, 0b11); + add(Types.READ_GRAPH, 0b01); } private ArrayList localCons = new ArrayList(); @@ -44,8 +42,8 @@ public class EffectIdMap { id |= toId(e, metaVars); return id; } - else if(effectCodes.contains(type)) { - return effectCodes.get(type); + else if(EFFECT_CODES.contains(type)) { + return EFFECT_CODES.get(type); } else if(type instanceof TMetaVar) { metaVars.add((TMetaVar)type); @@ -67,8 +65,8 @@ public class EffectIdMap { if(id == 0) return Types.NO_EFFECTS; ArrayList components = new ArrayList(); - for(TCon con : effectCons) { - int conId = effectCodes.get(con); + for(TCon con : EFFECT_CONS) { + int conId = EFFECT_CODES.get(con); if((id&conId) == conId) { components.add(con); id ^= conId;