Adding support for ElementFunction
[satune.git] / src / AlloyEnc / alloyenc.h
index dd93eb039f7d65e22f3359bfe5a90403687bce7b..97049e2fefdbb60e733287d5eca0a3a4f80fde32 100644 (file)
@@ -13,15 +13,19 @@ public:
        void encode();
        int solve();
        void writeToFile(string str);
-       uint64_t getValue(Element * element);
+       uint64_t getValue(Element *element);
+       bool getBooleanValue(Boolean *element);
        ~AlloyEnc();
 private:
-       void dumpAlloyIntScope();
+       void dumpAlloyFooter();
+       void dumpAlloyHeader();
        string encodeConstraint(BooleanEdge constraint);
        int getResult();
        string encodeBooleanLogic( BooleanLogic *bl);
+       string encodeBooleanVar( BooleanVar *bv);
        string encodePredicate( BooleanPredicate *bp);
        string encodeOperatorPredicate(BooleanPredicate *constraint);
+       string processElementFunction(ElementFunction *element, ElementSig *signature);
        CSolver *csolver;
        SignatureEnc sigEnc;
        ofstream output;