/// <summary> /// Represents compound binary expressions which involve other expressions on the left and right side /// </summary> /// <param name="e1"></param> /// <param name="o"></param> /// <param name="e2"></param> internal BinExprNode(Expr e1, Operator o, Expr e2) : base(o.Name, o.Guid) { op = o; left = e1; right = e2; }
internal Assignment(Node o, Expr e) : base("=", e.Guid) { left = o; right = e; }
/// <summary> /// Represents unary expressions which take one operand. /// </summary> /// <param name="x"></param> /// <param name="y"></param> internal UnaryExprNode(string x, Expr y) : base(y.Name, y.Guid) { op = x; e = y; }
/// <summary> /// Represents binary expressions which involve identifier on the left and compound expression on the right /// </summary> /// <param name="e1"></param> /// <param name="op"></param> /// <param name="e2"></param> public BinExprNode(IdentNode e1, Operator op, Expr e2) : base(op.Name, op.Guid) { left = e1; this.op = op; right = e2; }