5
5
from collections import deque , OrderedDict
6
6
from sys import version_info
7
7
8
+ from ._ascii import ascii_lower
9
+
8
10
from .constants import spaceCharacters
9
11
from .constants import entities
10
- from .constants import asciiLetters , asciiUpper2Lower
12
+ from .constants import asciiLetters
11
13
from .constants import digits , hexDigits , EOF
12
14
from .constants import tokenTypes , tagTokenTypes
13
15
from .constants import replacementCharacters
@@ -245,7 +247,7 @@ def emitCurrentToken(self):
245
247
token = self .currentToken
246
248
# Add token to the queue to be yielded
247
249
if (token ["type" ] in tagTokenTypes ):
248
- token ["name" ] = token ["name" ]. translate ( asciiUpper2Lower )
250
+ token ["name" ] = ascii_lower ( token ["name" ])
249
251
if token ["type" ] == tokenTypes ["StartTag" ]:
250
252
raw = token ["data" ]
251
253
data = attributeMap (raw )
@@ -939,7 +941,7 @@ def attributeNameState(self):
939
941
# start tag token is emitted so values can still be safely appended
940
942
# to attributes, but we do want to report the parse error in time.
941
943
self .currentToken ["data" ][- 1 ][0 ] = (
942
- self .currentToken ["data" ][- 1 ][0 ]. translate ( asciiUpper2Lower ))
944
+ ascii_lower ( self .currentToken ["data" ][- 1 ][0 ]))
943
945
for name , _ in self .currentToken ["data" ][:- 1 ]:
944
946
if self .currentToken ["data" ][- 1 ][0 ] == name :
945
947
self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
@@ -1360,10 +1362,10 @@ def beforeDoctypeNameState(self):
1360
1362
def doctypeNameState (self ):
1361
1363
data = self .stream .char ()
1362
1364
if data in spaceCharacters :
1363
- self .currentToken ["name" ] = self .currentToken ["name" ]. translate ( asciiUpper2Lower )
1365
+ self .currentToken ["name" ] = ascii_lower ( self .currentToken ["name" ])
1364
1366
self ._state = self .afterDoctypeNameState
1365
1367
elif data == ">" :
1366
- self .currentToken ["name" ] = self .currentToken ["name" ]. translate ( asciiUpper2Lower )
1368
+ self .currentToken ["name" ] = ascii_lower ( self .currentToken ["name" ])
1367
1369
self .tokenQueue .append (self .currentToken )
1368
1370
self ._state = self .dataState
1369
1371
elif data == "\u0000 " :
@@ -1375,7 +1377,7 @@ def doctypeNameState(self):
1375
1377
self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
1376
1378
"eof-in-doctype-name" })
1377
1379
self .currentToken ["correct" ] = False
1378
- self .currentToken ["name" ] = self .currentToken ["name" ]. translate ( asciiUpper2Lower )
1380
+ self .currentToken ["name" ] = ascii_lower ( self .currentToken ["name" ])
1379
1381
self .tokenQueue .append (self .currentToken )
1380
1382
self ._state = self .dataState
1381
1383
else :
0 commit comments