comparison mercurial/revset.py @ 29900:104914b03b83

revset: make optimize() reject unknown operators This should have caught the bug of 'keyvalue' operator fixed at 5004ef47f437. The catch-all pattern is useless since optimize() should be aware of all known operators.
author Yuya Nishihara <yuya@tcha.org>
date Sun, 07 Aug 2016 15:01:42 +0900
parents cbf9984a7957
children 90a1886a203b
comparison
equal deleted inserted replaced
29899:b1ebc767563d 29900:104914b03b83
2461 elif f in "sort": 2461 elif f in "sort":
2462 w = 10 # assume most sorts look at changelog 2462 w = 10 # assume most sorts look at changelog
2463 else: 2463 else:
2464 w = 1 2464 w = 1
2465 return w + wa, (op, x[1], ta) 2465 return w + wa, (op, x[1], ta)
2466 return 1, x 2466 raise ValueError('invalid operator %r' % op)
2467 2467
2468 def optimize(tree): 2468 def optimize(tree):
2469 _weight, newtree = _optimize(tree, small=True) 2469 _weight, newtree = _optimize(tree, small=True)
2470 return newtree 2470 return newtree
2471 2471