📄 parameter_expr.cc
字号:
#include "Parameter_expr.h"#include "Param_symbol.h"#include "Affine_func.h"#include "CNF_clause.h"#include "Bool_number.h"#include "Cmd_options.h"#include "Globals.h"Parameter_expr::Parameter_expr(const Param_symbol * s, const Globals * glob) : Terminal_expr(glob) { value = s;}Expr * Parameter_expr::shallow_copy() const { return new Parameter_expr(value, globals);}string Parameter_expr::to_matlab() const { return value->to_matlab();}bool Parameter_expr::is_real() const { return value->get_type() == REAL_TYPE;}bool Parameter_expr::is_logic() const { return value->get_type() == BOOL_TYPE;}Affine_func * Parameter_expr::compute_affine() const { assert(is_affine()); //fine return new Affine_func(clone(), globals);}bool Parameter_expr::is_affine() const { return value->get_type() == REAL_TYPE;}bool Parameter_expr::is_symbolic() const { return value->is_symbolic();}CNF_clause * Parameter_expr::compute_CNF() const { CNF_clause * res; Bool_number * n; assert(is_logic()); //fine assert(is_number()); //fine n = (Bool_number *) compute_number(); res = new CNF_clause(n->get_value()); return res;}bool Parameter_expr::is_number() const { if (globals->cmd_options->all_params_symbolic()) return false; return !(value->is_symbolic());}Number * Parameter_expr::compute_number() const { return value->compute_number();}void Parameter_expr::semantic_checks() {}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -