📄 number_expr.cc
字号:
#include "Number_expr.h"#include "Real_number.h"#include "Bool_number.h"#include "CNF_clause.h"#include "Affine_func.h"/** maybe copy n, so n could be modified */Number_expr::Number_expr(Number * n, const Globals * glob) : Terminal_expr(glob) { value = n;}Expr * Number_expr::shallow_copy() const { return new Number_expr(value->clone(), globals);}Number_expr::Number_expr(double dbl, const Globals * glob) : Terminal_expr(glob) { value = new Real_number(dbl);}Number_expr::Number_expr(bool bol, const Globals * glob) : Terminal_expr(glob) { value = new Bool_number(bol);}string Number_expr::to_matlab() const { return value->to_matlab();}CNF_clause * Number_expr::compute_CNF() const { CNF_clause * res; assert(value->get_type() == BOOL_TYPE); //fine res = new CNF_clause(((Bool_number *) value)->get_value()); return res;}Affine_func * Number_expr::compute_affine() const { return new Affine_func(clone(), globals);}bool Number_expr::is_affine() const { return value->get_type() == REAL_TYPE;}bool Number_expr::is_real() const { return value->get_type() == REAL_TYPE;}bool Number_expr::is_logic() const { return value->get_type() == BOOL_TYPE;}Number * Number_expr::compute_number() const { return value->clone();}void Number_expr::semantic_checks() {}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -