Fixing missing changes
authorHamed Gorjiara <hgorjiar@uci.edu>
Fri, 29 Sep 2017 21:16:17 +0000 (14:16 -0700)
committerHamed Gorjiara <hgorjiar@uci.edu>
Fri, 29 Sep 2017 21:16:17 +0000 (14:16 -0700)
src/AST/boolean.cc
src/AST/boolean.h
src/AST/element.h
src/AST/predicate.cc

index 8a6f0d31b7f10d79c4dd44b358d6ed02a3a18a3e..0f699f7cf5245db063e9140debcb1ba8b37792e1 100644 (file)
@@ -109,6 +109,10 @@ void BooleanVar::serialize(Serializer* serializer){
        serializer->mywrite(&vtype, sizeof(VarType));
 }
 
+void BooleanVar::print(){
+        model_println("BooleanVar");
+}
+
 void BooleanOrder::serialize(Serializer* serializer){
        if(serializer->isSerialized(this))
                return;
@@ -123,6 +127,12 @@ void BooleanOrder::serialize(Serializer* serializer){
        serializer->mywrite(&second, sizeof(uint64_t));
 }
 
+void BooleanOrder::print(){
+       model_println("{BooleanOrder: First= %lu, Second = %lu on Order:", first, second);
+       order->print();
+        model_println("}\n");
+}
+
 void BooleanPredicate::serialize(Serializer* serializer){
        if(serializer->isSerialized(this))
                return;
@@ -149,6 +159,18 @@ void BooleanPredicate::serialize(Serializer* serializer){
        serializer->mywrite(&undefStat, sizeof(Boolean*));
 }
 
+void BooleanPredicate::print(){
+       model_println("{BooleanPredicate:");
+        predicate->print();
+       model_println("elements:");
+        uint size = inputs.getSize();
+       for(uint i=0; i<size; i++){
+               Element *input = inputs.get(i);
+               input->print();
+       }
+        model_println("}\n");
+}
+
 void BooleanLogic::serialize(Serializer* serializer){
        if(serializer->isSerialized(this))
                return;
@@ -169,3 +191,15 @@ void BooleanLogic::serialize(Serializer* serializer){
        }
 }
 
+void BooleanLogic::print(){
+       model_println("{BooleanLogic: %s", 
+                op ==SATC_AND? "AND": op == SATC_OR? "OR": op==SATC_NOT? "NOT":
+                op == SATC_XOR? "XOR" : op==SATC_IFF? "IFF" : "IMPLIES");
+        uint size = inputs.getSize();
+       for(uint i=0; i<size; i++){
+               BooleanEdge input = inputs.get(i);
+                input.getBoolean()->print();
+       }
+        model_println("}\n");
+}
+
index 3674d9f29d5e934bd94e90ecd1dfe93a488b3e9c..6a814294b91c099e3f6776e4119136f7ff60d7be 100644 (file)
@@ -34,7 +34,7 @@ public:
        bool isTrue() {return istrue;}
        bool isFalse() {return !istrue;}
        void serialize(Serializer *serializer ){};
-        virtual void print();
+        virtual void print(){};
        bool istrue;
        CMEMALLOC;
 };
index b045186637cc426dd7263de01fefa190f95ad728..c6436036b59a38c0acbc6b3023bbac8678cee9e8 100644 (file)
@@ -17,7 +17,7 @@ public:
        inline ElementEncoding *getElementEncoding(){ return &encoding; }
        virtual Element *clone(CSolver *solver, CloneMap *map) {ASSERT(0); return NULL;};
        virtual void serialize(Serializer* serializer) =0;
-        virtual void print();
+        virtual void print() = 0;
        virtual void updateParents() {}
        virtual Set * getRange() = 0;
        CMEMALLOC;
index 659a3e336a97d58b2d6c5f454bcb7a2e320944fd..f320a4dd2b8e7162538f67d2be948f29f7404e4e 100644 (file)
@@ -95,3 +95,9 @@ void PredicateOperator::serialize(Serializer* serializer){
        }
 }
 
+void PredicateOperator::print(){       
+       model_println("{PredicateOperator: %s }", op ==SATC_EQUALS? "EQUAL": "NOT-EQUAL");
+}
+
+
+