26#if ! defined (octave_pt_binop_h)
27#define octave_pt_binop_h 1
29#include "octave-config.h"
51 : m_lhs (nullptr), m_rhs (nullptr), m_etype (t), m_preserve_operands (false)
55 : m_lhs (a), m_op_tok (op_tok), m_rhs (b), m_etype (t), m_preserve_operands (false)
62 if (! m_preserve_operands)
82 std::
string oper ()
const {
return op_str (); }
84 std::string
op_str ()
const;
103 return ovl (evaluate (tw, nargout));
113 void matlab_style_short_circuit_warning (
const char *op);
132 bool m_preserve_operands;
185 std::
string oper ()
const {
return op_str (); }
187 std::string
op_str ()
const;
197 return ovl (evaluate (tw, nargout));
211OCTAVE_END_NAMESPACE(octave)
~tree_binary_expression()
tree_binary_expression(octave_value::binary_op t=octave_value::unknown_binary_op)
octave_value::binary_op op_type() const
tree_binary_expression(tree_expression *a, const token &op_tok, tree_expression *b, octave_value::binary_op t=octave_value::unknown_binary_op)
comment_list leading_comments() const
octave_value_list evaluate_n(tree_evaluator &tw, int nargout=1)
bool is_binary_expression() const
void rhs(tree_expression *expr)
void accept(tree_walker &tw)
comment_list trailing_comments() const
virtual bool is_braindead() const
void lhs(tree_expression *expr)
std::string profiler_name() const
void accept(tree_walker &tw)
tree_boolean_expression(type t=unknown)
octave_value_list evaluate_n(tree_evaluator &tw, int nargout=1)
~tree_boolean_expression()=default
tree_boolean_expression(tree_expression *a, const token &op_tok, tree_expression *b, type t=unknown)
bool is_boolean_expression() const
tree_braindead_shortcircuit_binary_expression(tree_expression *a, const token &op_tok, tree_expression *b, octave_value::binary_op t)
bool is_braindead() const
~tree_braindead_shortcircuit_binary_expression()=default
virtual octave_value evaluate(tree_evaluator &tw, int nargout=1)=0
virtual std::string op_str() const
virtual tree_expression * dup(symbol_scope &scope) const =0
virtual void visit_boolean_expression(tree_boolean_expression &)
virtual void visit_binary_expression(tree_binary_expression &)
OCTAVE_BEGIN_NAMESPACE(octave) static octave_value daspk_fcn
OCTAVE_DEPRECATED(11, "") typedef bool(*b_d_Mapper)(double)
octave_value_list ovl(const OV_Args &... args)
Construct an octave_value_list with less typing.