New operator %=
This commit is contained in:
@@ -513,16 +513,6 @@ func (parser *parser) parseGeneral(scanner *scanner, ctx parserContext, termSymb
|
||||
// Colon outside a selector term acts like a separator
|
||||
firstToken = true
|
||||
}
|
||||
// case SymPlusEqual:
|
||||
// opTk := NewToken(tk.row, tk.col, SymEqual, "=")
|
||||
// if _, err = tree.addToken(opTk); err == nil {
|
||||
// if err = tree.addTerm(tree.root.Clone()); err == nil {
|
||||
// opTk = NewToken(tk.row, tk.col, SymPlus, "+")
|
||||
// currentTerm, err = tree.addToken(opTk)
|
||||
// }
|
||||
// }
|
||||
// case SymStarEqual:
|
||||
// currentTerm, err = parser.expandOpAssign(scanner, tree, tk, ctx, termSymbols)
|
||||
default:
|
||||
currentTerm, err = tree.addToken(tk)
|
||||
}
|
||||
@@ -560,50 +550,3 @@ func (parser *parser) parseGeneral(scanner *scanner, ctx parserContext, termSymb
|
||||
// }
|
||||
// return
|
||||
// }
|
||||
|
||||
// func (parser *parser) expandOpAssign(scanner *scanner, tree *ast, tk *Token, ctx parserContext, termSymbols []Symbol) (t *term, err error) {
|
||||
// var opSym Symbol
|
||||
// var opString string
|
||||
|
||||
// if tree.root != nil {
|
||||
// switch tk.Sym {
|
||||
// case SymPlusEqual:
|
||||
// opString = "+"
|
||||
// opSym = SymPlus
|
||||
// case SymMinusEqual:
|
||||
// opString = "-"
|
||||
// opSym = SymMinus
|
||||
// case SymStarEqual:
|
||||
// opString = "*"
|
||||
// opSym = SymStar
|
||||
// default:
|
||||
// err = tk.Errorf("unsopported operator %q", tk.source)
|
||||
// return
|
||||
// }
|
||||
// leftExpr := tree.root.Clone()
|
||||
// leftExpr.setParent(nil)
|
||||
// if t, err = tree.addToken(NewToken(tk.row, tk.col, SymEqual, "=")); err == nil {
|
||||
// t = leftExpr
|
||||
// if err = tree.addTerm(leftExpr); err == nil {
|
||||
// if t, err = tree.addToken(NewToken(tk.row, tk.col, opSym, opString)); err == nil {
|
||||
|
||||
// var subTree *ast
|
||||
// // if subTree, err = parser.parseGeneral(scanner, ctx, SymEos, SymSemiColon, SymClosedRound, SymClosedBrace, SymClosedSquare); err == nil {
|
||||
// if subTree, err = parser.parseGeneral(scanner, ctx, termSymbols...); err == nil {
|
||||
// if scanner.Previous().IsOneOfA(SymSemiColon, SymClosedRound, SymClosedBrace, SymClosedSquare) {
|
||||
// if err = scanner.UnreadToken(); err != nil {
|
||||
// return
|
||||
// }
|
||||
// }
|
||||
// subTree.root.priority = priValue
|
||||
// err = tree.addTerm(newExprTerm(subTree.root))
|
||||
// t = subTree.root
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// } else {
|
||||
// err = tk.Errorf("left operand of %q must be a variable or a variable expression", tk)
|
||||
// }
|
||||
// return
|
||||
// }
|
||||
|
||||
Reference in New Issue
Block a user