X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=src%2FInterpreter%2Falloyinterpreter.h;h=e4a1e3b0531761aa33bde0e41868a163d7b57d3a;hb=4c58af641a877bb6d65769994c8fd57ecedbd22c;hp=ec2e4a3f9dc120d780f437a79d16172d8e627d15;hpb=917bc08fb2d0ea78f6492323d52a4465b517809a;p=satune.git diff --git a/src/Interpreter/alloyinterpreter.h b/src/Interpreter/alloyinterpreter.h index ec2e4a3..e4a1e3b 100644 --- a/src/Interpreter/alloyinterpreter.h +++ b/src/Interpreter/alloyinterpreter.h @@ -1,5 +1,5 @@ -#ifndef ALLOYENC_H -#define ALLOYENC_H +#ifndef ALLOYINTERPRETER_H +#define ALLOYINTERPRETER_H #include "classlist.h" #include "signatureenc.h" @@ -10,10 +10,14 @@ class AlloyInterpreter: public Interpreter{ public: AlloyInterpreter(CSolver *solver); + virtual ValuedSignature *getBooleanSignature(uint id); + virtual ValuedSignature *getElementSignature(uint id, Signature *ssig); + virtual Signature *getSetSignature(uint id, Set *set); virtual ~AlloyInterpreter(); protected: virtual void dumpFooter(); virtual void dumpHeader(); + int getAlloyIntScope(); virtual void compileRunCommand(char * command , size_t size); virtual int getResult(); virtual void dumpAllConstraints(Vector &facts); @@ -21,8 +25,8 @@ protected: virtual string encodeBooleanLogic( BooleanLogic *bl); virtual string encodeBooleanVar( BooleanVar *bv); string encodeOperatorPredicate(BooleanPredicate *constraint); - virtual string processElementFunction(ElementFunction *element, ElementSig *signature); - virtual string operatorPredicateConstraint(CompOp op, ElementSig *elemSig1, ElementSig *elemSig2); + virtual string processElementFunction(ElementFunction *element, ValuedSignature *signature); + virtual string operatorPredicateConstraint(CompOp op, ValuedSignature *elemSig1, ValuedSignature *elemSig2); }; #endif