comparison mercurial/parser.py @ 31484:afb335353d28

util: wrap s.decode('string_escape') calls for future py3 compatibility
author Yuya Nishihara <yuya@tcha.org>
date Fri, 17 Mar 2017 23:42:46 +0900
parents 089e37802fb3
children a98540ea1e42
comparison
equal deleted inserted replaced
31483:291951ad070b 31484:afb335353d28
17 # __call__(program) parses program into a labeled tree 17 # __call__(program) parses program into a labeled tree
18 18
19 from __future__ import absolute_import 19 from __future__ import absolute_import
20 20
21 from .i18n import _ 21 from .i18n import _
22 from . import error 22 from . import (
23 error,
24 util,
25 )
23 26
24 class parser(object): 27 class parser(object):
25 def __init__(self, elements, methods=None): 28 def __init__(self, elements, methods=None):
26 self._elements = elements 29 self._elements = elements
27 self._methods = methods 30 self._methods = methods
162 args[k] = x[2] 165 args[k] = x[2]
163 return args 166 return args
164 167
165 def unescapestr(s): 168 def unescapestr(s):
166 try: 169 try:
167 return s.decode("string_escape") 170 return util.unescapestr(s)
168 except ValueError as e: 171 except ValueError as e:
169 # mangle Python's exception into our format 172 # mangle Python's exception into our format
170 raise error.ParseError(str(e).lower()) 173 raise error.ParseError(str(e).lower())
171 174
172 def _prettyformat(tree, leafnodes, level, lines): 175 def _prettyformat(tree, leafnodes, level, lines):