Envision
A visual programming IDE for object-oriented languages
List of all members | Static Public Member Functions | Static Private Member Functions
Interaction::ExpressionTreeUtils Class Reference

Static Public Member Functions

static void fixTop (Expression *&top)
 
static void grow (Expression *&top, Operator *op, bool leftside)
 
static Expressionreplace (Expression *&top, Expression *oldExpr, Expression *newExpr)
 
static void shrink (Expression *&top, Operator *op, bool leftside)
 

Static Private Member Functions

static bool fixExprPrecedence (Expression *&top, Expression *e)
 
static void fixPrecedence (Expression *&top)
 
static void fixWrongIds (Expression *&top)
 Replaces all operators descending from top with an unfinished operator in case an id operand is expected but was not provided. More...
 
static void rotateLeft (Expression *&top, Operator *child, Operator *parent)
 
static void rotateRight (Expression *&top, Operator *child, Operator *parent)
 

Member Function Documentation

◆ fixExprPrecedence()

bool Interaction::ExpressionTreeUtils::fixExprPrecedence ( Expression *&  top,
Expression e 
)
staticprivate

◆ fixPrecedence()

void Interaction::ExpressionTreeUtils::fixPrecedence ( Expression *&  top)
staticprivate

◆ fixTop()

void Interaction::ExpressionTreeUtils::fixTop ( Expression *&  top)
static

◆ fixWrongIds()

void Interaction::ExpressionTreeUtils::fixWrongIds ( Expression *&  top)
staticprivate

Replaces all operators descending from top with an unfinished operator in case an id operand is expected but was not provided.

◆ grow()

void Interaction::ExpressionTreeUtils::grow ( Expression *&  top,
Operator op,
bool  leftside 
)
static

◆ replace()

Expression * Interaction::ExpressionTreeUtils::replace ( Expression *&  top,
Expression oldExpr,
Expression newExpr 
)
static

◆ rotateLeft()

void Interaction::ExpressionTreeUtils::rotateLeft ( Expression *&  top,
Operator child,
Operator parent 
)
staticprivate

◆ rotateRight()

void Interaction::ExpressionTreeUtils::rotateRight ( Expression *&  top,
Operator child,
Operator parent 
)
staticprivate

◆ shrink()

void Interaction::ExpressionTreeUtils::shrink ( Expression *&  top,
Operator op,
bool  leftside 
)
static