1 #ifndef POINCARE_DYNAMIC_HIERARCHY_H 2 #define POINCARE_DYNAMIC_HIERARCHY_H 37 void removeOperandAtIndex(
int i,
bool deleteAfterRemoval);
38 int simplificationOrderSameType(
const Expression * e,
bool canBeInterrupted)
const override;
39 int simplificationOrderGreaterType(
const Expression * e,
bool canBeInterrupted)
const override;
void removeOperand(const Expression *e, bool deleteAfterRemoval=true)
void addOperand(Expression *operand)
void addOperands(const Expression *const *operands, int numberOfOperands)
int(* ExpressionOrder)(const Expression *e1, const Expression *e2, bool canBeInterrupted)
Expression * squashUnaryHierarchy()
const Expression ** m_operands
void addOperandAtIndex(Expression *operand, int index)
const Expression *const * operands() const override
void mergeOperands(DynamicHierarchy *d)
DynamicHierarchy(const Expression *operand1, const Expression *operand2, bool cloneOperands=true)
void sortOperands(ExpressionOrder order, bool canBeInterrupted)
int numberOfOperands() const override
const Expression * operand(int i) const
DynamicHierarchy & operator=(const DynamicHierarchy &other)=delete