mirror of
https://github.com/facebook/sapling.git
synced 2024-10-09 00:14:35 +03:00
revset: also parse x^: as (x^):
Given x^:y is (x^):y, this seems sensible.
This commit is contained in:
parent
992f4bdde9
commit
1cc6421086
@ -2323,11 +2323,14 @@ def _fixops(x):
|
||||
op = x[0]
|
||||
if op == 'parent':
|
||||
# x^:y means (x^) : y, not x ^ (:y)
|
||||
# x^: means (x^) :, not x ^ (:)
|
||||
post = ('parentpost', x[1])
|
||||
if x[2][0] == 'dagrangepre':
|
||||
return _fixops(('dagrange', post, x[2][1]))
|
||||
elif x[2][0] == 'rangepre':
|
||||
return _fixops(('range', post, x[2][1]))
|
||||
elif x[2][0] == 'rangeall':
|
||||
return _fixops(('rangepost', post))
|
||||
|
||||
return (op,) + tuple(_fixops(y) for y in x[1:])
|
||||
|
||||
|
@ -504,6 +504,15 @@ infix/suffix resolution of ^ operator (issue2884):
|
||||
1
|
||||
2
|
||||
|
||||
$ try '9^:'
|
||||
(rangepost
|
||||
(parentpost
|
||||
('symbol', '9')))
|
||||
* set:
|
||||
<spanset+ 8:9>
|
||||
8
|
||||
9
|
||||
|
||||
x^:y should be resolved before omitting group operators
|
||||
|
||||
$ try '1^(:2)'
|
||||
@ -560,6 +569,22 @@ infix/suffix resolution of ^ operator (issue2884):
|
||||
1
|
||||
2
|
||||
|
||||
$ try '(9^:)^:'
|
||||
(rangepost
|
||||
(parentpost
|
||||
(group
|
||||
(rangepost
|
||||
(parentpost
|
||||
('symbol', '9'))))))
|
||||
* set:
|
||||
<spanset+ 4:9>
|
||||
4
|
||||
5
|
||||
6
|
||||
7
|
||||
8
|
||||
9
|
||||
|
||||
x^ in alias should also be resolved
|
||||
|
||||
$ try 'A' --config 'revsetalias.A=1^:2'
|
||||
|
Loading…
Reference in New Issue
Block a user