15 class ConstValueSetExpr :
public SetExpr
19 ConstValueSetExpr(
const T& x)
23 ConstValueSetExpr(
const ConstValueSetExpr<T>& e) =
default;
25 std::shared_ptr<ExprBase> copy()
const
27 return std::make_shared<ConstValueSetExpr<T>>(*this);
30 void replace_expr(
const ExprID& old_expr_id,
const std::shared_ptr<ExprBase>& new_expr)
33 virtual bool belongs_to_args_list(
const FunctionArgsList& args)
const
38 std::shared_ptr<CtcBase<IntervalVector>> create_ctc(
const FunctionArgsList& args,
const std::vector<std::shared_ptr<CtcBase<IntervalVector>>>& x)
const
40 return std::make_shared<CtcWrapper<T>>(_x);
43 std::shared_ptr<SepBase> create_sep(
const FunctionArgsList& args,
const std::vector<std::shared_ptr<SepBase>>& x)
const
45 return std::make_shared<SepWrapper<T>>(_x);
48 operator std::shared_ptr<SetExpr>()
const
50 return std::dynamic_pointer_cast<SetExpr>(this->copy());
59 std::shared_ptr<SetExpr> const_set(
const T& x)
61 return std::make_shared<ConstValueSetExpr<T>>(x);