Mercurial > hg-stable
diff mercurial/parser.py @ 26231:87c9c562c37a
parser: move unescape helper from templater
revset and fileset have a similar problem, so let's make it a common helper
function.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Thu, 10 Sep 2015 23:25:10 +0900 |
parents | 7448df709b2e |
children | 639e0f1e8ffa |
line wrap: on
line diff
--- a/mercurial/parser.py Thu Sep 10 16:14:39 2015 -0700 +++ b/mercurial/parser.py Thu Sep 10 23:25:10 2015 +0900 @@ -122,6 +122,13 @@ args[k] = x[2] return args +def unescapestr(s): + try: + return s.decode("string_escape") + except ValueError as e: + # mangle Python's exception into our format + raise error.ParseError(str(e).lower()) + def _prettyformat(tree, leafnodes, level, lines): if not isinstance(tree, tuple) or tree[0] in leafnodes: lines.append((level, str(tree)))