equal
deleted
inserted
replaced
12 import os |
12 import os |
13 import unicodedata |
13 import unicodedata |
14 |
14 |
15 from . import ( |
15 from . import ( |
16 error, |
16 error, |
|
17 policy, |
17 pycompat, |
18 pycompat, |
18 ) |
19 ) |
19 |
20 |
20 _sysstr = pycompat.sysstr |
21 _sysstr = pycompat.sysstr |
21 |
22 |
316 return s.lower() |
317 return s.lower() |
317 |
318 |
318 def asciilower(s): |
319 def asciilower(s): |
319 # delay importing avoids cyclic dependency around "parsers" in |
320 # delay importing avoids cyclic dependency around "parsers" in |
320 # pure Python build (util => i18n => encoding => parsers => util) |
321 # pure Python build (util => i18n => encoding => parsers => util) |
321 from . import parsers |
322 parsers = policy.importmod(r'parsers') |
322 impl = getattr(parsers, 'asciilower', _asciilower) |
323 impl = getattr(parsers, 'asciilower', _asciilower) |
323 global asciilower |
324 global asciilower |
324 asciilower = impl |
325 asciilower = impl |
325 return impl(s) |
326 return impl(s) |
326 |
327 |
332 return s.upper() |
333 return s.upper() |
333 |
334 |
334 def asciiupper(s): |
335 def asciiupper(s): |
335 # delay importing avoids cyclic dependency around "parsers" in |
336 # delay importing avoids cyclic dependency around "parsers" in |
336 # pure Python build (util => i18n => encoding => parsers => util) |
337 # pure Python build (util => i18n => encoding => parsers => util) |
337 from . import parsers |
338 parsers = policy.importmod(r'parsers') |
338 impl = getattr(parsers, 'asciiupper', _asciiupper) |
339 impl = getattr(parsers, 'asciiupper', _asciiupper) |
339 global asciiupper |
340 global asciiupper |
340 asciiupper = impl |
341 asciiupper = impl |
341 return impl(s) |
342 return impl(s) |
342 |
343 |