Add convenience functions
authorbdemsky <bdemsky@uci.edu>
Thu, 31 Aug 2017 04:08:30 +0000 (21:08 -0700)
committerbdemsky <bdemsky@uci.edu>
Thu, 31 Aug 2017 04:08:30 +0000 (21:08 -0700)
src/csolver.cc
src/csolver.h

index d7003df..0d6e352 100644 (file)
@@ -227,6 +227,17 @@ bool CSolver::isFalse(Boolean *b) {
        return b->isFalse();
 }
 
+Boolean *CSolver::applyLogicalOperation(LogicOp op, Boolean * arg1, Boolean * arg2) {
+       Boolean * array[] = {arg1, arg2};
+       return applyLogicalOperation(op, array, 2);
+}
+
+Boolean *CSolver::applyLogicalOperation(LogicOp op, Boolean *arg) {
+       Boolean * array[] = {arg};
+       return applyLogicalOperation(op, array, 1);
+}
+
+
 Boolean *CSolver::applyLogicalOperation(LogicOp op, Boolean **array, uint asize) {
        Boolean * newarray[asize];
        switch(op) {
index 00abc66..b937f71 100644 (file)
@@ -86,6 +86,14 @@ public:
 
        Boolean *applyLogicalOperation(LogicOp op, Boolean **array, uint asize);
 
+               /** This function applies a logical operation to the Booleans in its input. */
+
+       Boolean *applyLogicalOperation(LogicOp op, Boolean * arg1, Boolean * arg2);
+
+       /** This function applies a logical operation to the Booleans in its input. */
+
+       Boolean *applyLogicalOperation(LogicOp op, Boolean *arg);
+
        /** This function adds a boolean constraint to the set of constraints
            to be satisfied */