Add timing statements
[satune.git] / src / AST / function.cc
index 96b0797452aacfb744d418ceaa3170f9604838f1..c38551246ef93a5e231624a7474e202268f63d1a 100644 (file)
@@ -62,48 +62,58 @@ Function *FunctionTable::clone(CSolver *solver, CloneMap *map) {
        return f;
 }
 
-Set * FunctionTable::getRange() {
+Set *FunctionTable::getRange() {
        return table->getRange();
 }
 
-void FunctionTable::serialize(Serializer* serializer){
-       if(serializer->isSerialized(this))
+void FunctionTable::serialize(Serializer *serializer) {
+       if (serializer->isSerialized(this))
                return;
        serializer->addObject(this);
-       
+
        table->serialize(serializer);
-       
-       ASTNodeType type = FUNCTABLETYPE;       
+
+       ASTNodeType type = FUNCTABLETYPE;
        serializer->mywrite(&type, sizeof(ASTNodeType));
-       FunctionTableThis = this;
-       serializer->mywrite(&This, sizeof(FunctionTable*));
+       FunctionTable *This = this;
+       serializer->mywrite(&This, sizeof(FunctionTable *));
        serializer->mywrite(&table, sizeof(Table *));
        serializer->mywrite(&undefBehavior, sizeof(UndefinedBehavior));
-       
+
 }
 
-void FunctionOperator::serialize(Serializer* serializer){
-       if(serializer->isSerialized(this))
+void FunctionTable::print() {
+       model_print("{FunctionTable:\n");
+       table->print();
+       model_print("}\n");
+}
+
+void FunctionOperator::serialize(Serializer *serializer) {
+       if (serializer->isSerialized(this))
                return;
        serializer->addObject(this);
-       
+
        uint size = domains.getSize();
-       for(uint i=0; i<size; i++){
-               Setdomain = domains.get(i);
+       for (uint i = 0; i < size; i++) {
+               Set *domain = domains.get(i);
                domain->serialize(serializer);
        }
        range->serialize(serializer);
-       
-       ASTNodeType nodeType = FUNCOPTYPE; 
+
+       ASTNodeType nodeType = FUNCOPTYPE;
        serializer->mywrite(&nodeType, sizeof(ASTNodeType));
-       FunctionOperatorThis = this;
-       serializer->mywrite(&This, sizeof(FunctionOperator*));
+       FunctionOperator *This = this;
+       serializer->mywrite(&This, sizeof(FunctionOperator *));
        serializer->mywrite(&op, sizeof(ArithOp));
        serializer->mywrite(&size, sizeof(uint));
-       for(uint i=0; i<size; i++){
+       for (uint i = 0; i < size; i++) {
                Set *domain = domains.get(i);
                serializer->mywrite(&domain, sizeof(Set *));
        }
        serializer->mywrite(&range, sizeof(Set *));
        serializer->mywrite(&overflowbehavior, sizeof(OverFlowBehavior));
-}
\ No newline at end of file
+}
+
+void FunctionOperator::print() {
+       model_print("{FunctionOperator: %s}\n", op == SATC_ADD ? "ADD" : "SUB" );
+}