Mercurial > hg
comparison .arcconfig @ 34329:6367318327f0
templater: adjust binding strength of '%' and '|' operators (BC)
This makes 'foo|bar%baz' parsed as '(foo|bar)%baz', not 'foo|(bar%baz)'.
Perhaps it was a mistake that '%' preceded '|'. Both '|' and '%' can be
considered a kind of function application, and '|' is more like a '.' operator
seen in OO languages. So IMHO '|' should have the same (or higher) binding as
'%'.
The BC breakage should be minimal since both '|' and '%' operators have
strict requirements for their operands and 'foo|bar%baz' was invalid:
- right-hand side of '|' must be a symbol
- left-hand side of '%' must be a dict or list
- right-hand side of '%' must be a string or symbol
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 24 Apr 2017 21:37:11 +0900 |
parents | b2c27d84f05c |
children | ff396501e841 |
comparison
equal
deleted
inserted
replaced
34328:dd28b1f55eb8 | 34329:6367318327f0 |
---|