00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include "expr_op.h"
00022
00023 using namespace std;
00024
00025 namespace CVC3 {
00026
00027 Op::Op(ExprManager* em, const Op& op) : d_kind(op.d_kind), d_expr() {
00028 if (!op.d_expr.isNull()) d_expr = em->rebuild(op.d_expr);
00029 }
00030
00031 Op& Op::operator=(const Op& op) {
00032 if(&op == this) return *this;
00033 d_kind = op.d_kind;
00034 d_expr = op.d_expr;
00035 return *this;
00036 }
00037
00038 string Op::toString() const {
00039 ostringstream ss;
00040 ss << *this;
00041 return ss.str();
00042 }
00043
00044 }