public Operator ReplaceOperator(Operator oldOp, Operator op) { for (int i = 0; i < this._numOps; i++) { if (this.ops[i] == oldOp) { this.ops[i] = op; op.SetPrecedence(oldOp.GetPrecedence()); } } return(op); }
public Operator InsertOperator(int key, Operator op, Operator existingOp) { this.AddOperator(key, op); int precedence = existingOp.GetPrecedence(); for (int i = 0; i < this.ops.Length; i++) { if ((this.ops[i] != null) && (this.ops[i].GetPrecedence() >= precedence)) { this.ops[i].SetPrecedence(this.ops[i].GetPrecedence() + 1); } } op.SetPrecedence(precedence); return(op); }
public Operator AppendOperator(int key, Operator op, Operator existingOp) { this.AddOperator(key, op); int i = existingOp.GetPrecedence() + 1; for (int j = 0; j < this.ops.Length; j++) { if ((this.ops[j] != null) && (this.ops[j].GetPrecedence() >= i)) { this.ops[j].SetPrecedence(this.ops[j].GetPrecedence() + 1); } } op.SetPrecedence(i); return(op); }
public bool SetPrecedenceTable(int[][] precArray) { bool flag = true; for (int i = 0; i < precArray.Length; i++) { for (int j = 0; j < precArray[i].Length; j++) { Operator @operator = this.GetOperator(precArray[i][j]); if (@operator != null) { @operator.SetPrecedence(i); } else { flag = false; } } } return(flag); }
public Operator AddOperator(Operator op, Operator existingOp) { this.AddOperator(this.NumOps, op); op.SetPrecedence(existingOp.GetPrecedence()); return(op); }
public Operator AddOperator(int key, Operator op, Operator existingOp) { this.AddOperator(key, op); op.SetPrecedence(existingOp.GetPrecedence()); return(op); }