for(CHRConstraint constraint : ruleset.constraints)
if(constraint.nextContainerFieldName != null)
storeClassBuilder.addField(Opcodes.ACC_PUBLIC, constraint.nextContainerFieldName, CHRPriorityFactContainer);
- if(ruleset.extensible)
- storeClassBuilder.addField(Opcodes.ACC_PUBLIC, "currentId", FACT_ID_TYPE);
+ //if(ruleset.extensible)
+ // storeClassBuilder.addField(Opcodes.ACC_PUBLIC, "currentId", FACT_ID_TYPE);
// Constructors
}
// update context id
+ mb.loadLocal(importedStore);
mb.loadLocal(contextVar);
+ mb.invokeVirtual("org/simantics/scl/runtime/chr/CHRRuntimeRuleset", "register", TypeDesc.VOID, new TypeDesc[] {CHRContext});
+ /*mb.loadLocal(contextVar);
mb.loadLocal(contextVar);
mb.loadField(CHRContext_name, "currentId", FACT_ID_TYPE);
mb.loadLocal(importedStore);
mb.loadField(include.ruleset.runtimeRulesetClassName, "currentId", FACT_ID_TYPE);
mb.invokeStatic("java/lang/Math", "max", FACT_ID_TYPE, new TypeDesc[] {FACT_ID_TYPE, FACT_ID_TYPE});
- mb.storeField(CHRContext_name, "currentId", FACT_ID_TYPE);
+ mb.storeField(CHRContext_name, "currentId", FACT_ID_TYPE);*/
mb.returnVoid();
mb.finish();
// store context id
mb.loadLocal(importedStore);
mb.loadLocal(contextVar);
+ mb.invokeVirtual("org/simantics/scl/runtime/chr/CHRRuntimeRuleset", "unregister", TypeDesc.VOID, new TypeDesc[] {CHRContext});
+ /*mb.loadLocal(importedStore);
+ mb.loadLocal(contextVar);
mb.loadField(CHRContext_name, "currentId", FACT_ID_TYPE);
- mb.storeField(include.ruleset.runtimeRulesetClassName, "currentId", FACT_ID_TYPE);
+ mb.storeField(include.ruleset.runtimeRulesetClassName, "currentId", FACT_ID_TYPE);*/
mb.returnVoid();
mb.finish();