@@ -121,7 +121,7 @@ def processSolidusInTag(self):
121121
122122if self .currentToken ["type" ]== "StartTag" and data == u">" :
123123self .currentToken ["type" ]= "EmptyTag"
124- elif data == EOF :
124+ elif data is EOF :
125125self .tokenQueue .append ({"type" :"ParseError" ,"data" :
126126"EOF following solidus" })
127127self .state = self .states ["data" ]
@@ -248,7 +248,7 @@ def consumeEntity(self, allowedChar=None, fromAttribute=False):
248248def entitiesStartingWith (name ):
249249return [e for e in filteredEntityList if e .startswith (name )]
250250
251- while charStack [- 1 ]!= EOF and \
251+ while charStack [- 1 ]is not EOF and \
252252entitiesStartingWith ("" .join (charStack )):
253253charStack .append (self .stream .char ())
254254
@@ -344,7 +344,7 @@ def dataState(self):
344344self .escapeFlag and "" .join (self .lastFourChars )[1 :]== "-->" :
345345self .escapeFlag = False
346346self .tokenQueue .append ({"type" :"Characters" ,"data" :data })
347- elif data == EOF :
347+ elif data is EOF :
348348# Tokenization ends.
349349return False
350350elif data in spaceCharacters :
@@ -430,7 +430,7 @@ def closeTagOpenState(self):
430430for x in xrange (len (self .currentToken ["name" ])+ 1 ):
431431charStack .append (self .stream .char ())
432432# Make sure we don't get hit by EOF
433- if charStack [- 1 ]== EOF :
433+ if charStack [- 1 ]is EOF :
434434break
435435
436436# Since this is just for checking. We put the characters back on
@@ -461,7 +461,7 @@ def closeTagOpenState(self):
461461self .tokenQueue .append ({"type" :"ParseError" ,"data" :
462462"expected-closing-tag-but-got-right-bracket" })
463463self .state = self .states ["data" ]
464- elif data == EOF :
464+ elif data is EOF :
465465self .tokenQueue .append ({"type" :"ParseError" ,"data" :
466466"expected-closing-tag-but-got-eof" })
467467self .tokenQueue .append ({"type" :"Characters" ,"data" :u"</" })
@@ -484,7 +484,7 @@ def tagNameState(self):
484484self .stream .charsUntil (asciiLetters ,True )
485485elif data == u">" :
486486self .emitCurrentToken ()
487- elif data == EOF :
487+ elif data is EOF :
488488self .tokenQueue .append ({"type" :"ParseError" ,"data" :
489489"eof-in-tag-name" })
490490self .emitCurrentToken ()
@@ -511,7 +511,7 @@ def beforeAttributeNameState(self):
511511"invalid-character-in-attribute-name" })
512512self .currentToken ["data" ].append ([data ,"" ])
513513self .state = self .states ["attributeName" ]
514- elif data == EOF :
514+ elif data is EOF :
515515self .tokenQueue .append ({"type" :"ParseError" ,"data" :
516516"expected-attribute-name-but-got-eof" })
517517self .emitCurrentToken ()
@@ -545,7 +545,7 @@ def attributeNameState(self):
545545"invalid-character-in-attribute-name" })
546546self .currentToken ["data" ][- 1 ][0 ]+= data
547547leavingThisState = False
548- elif data == EOF :
548+ elif data is EOF :
549549self .tokenQueue .append ({"type" :"ParseError" ,"data" :
550550"eof-in-attribute-name" })
551551self .state = self .states ["data" ]
@@ -585,7 +585,7 @@ def afterAttributeNameState(self):
585585elif data == u"/" :
586586if not self .processSolidusInTag ():
587587self .state = self .states ["beforeAttributeName" ]
588- elif data == EOF :
588+ elif data is EOF :
589589self .tokenQueue .append ({"type" :"ParseError" ,"data" :
590590"expected-end-of-tag-but-got-eof" })
591591self .emitCurrentToken ()
@@ -612,7 +612,7 @@ def beforeAttributeValueState(self):
612612"equals-in-unquoted-attribute-value" })
613613self .currentToken ["data" ][- 1 ][1 ]+= data
614614self .state = self .states ["attributeValueUnQuoted" ]
615- elif data == EOF :
615+ elif data is EOF :
616616self .tokenQueue .append ({"type" :"ParseError" ,"data" :
617617"expected-attribute-value-but-got-eof" })
618618self .emitCurrentToken ()
@@ -627,7 +627,7 @@ def attributeValueDoubleQuotedState(self):
627627self .state = self .states ["afterAttributeValue" ]
628628elif data == u"&" :
629629self .processEntityInAttribute (u'"' )
630- elif data == EOF :
630+ elif data is EOF :
631631self .tokenQueue .append ({"type" :"ParseError" ,"data" :
632632"eof-in-attribute-value-double-quote" })
633633self .emitCurrentToken ()
@@ -642,7 +642,7 @@ def attributeValueSingleQuotedState(self):
642642self .state = self .states ["afterAttributeValue" ]
643643elif data == u"&" :
644644self .processEntityInAttribute (u"'" )
645- elif data == EOF :
645+ elif data is EOF :
646646self .tokenQueue .append ({"type" :"ParseError" ,"data" :
647647"eof-in-attribute-value-single-quote" })
648648self .emitCurrentToken ()
@@ -663,7 +663,7 @@ def attributeValueUnQuotedState(self):
663663self .tokenQueue .append ({"type" :"ParseError" ,"data" :
664664"unexpected-character-in-unquoted-attribute-value" })
665665self .currentToken ["data" ][- 1 ][1 ]+= data
666- elif data == EOF :
666+ elif data is EOF :
667667self .tokenQueue .append ({"type" :"ParseError" ,"data" :
668668"eof-in-attribute-value-no-quotes" })
669669self .emitCurrentToken ()
@@ -682,7 +682,7 @@ def afterAttributeValueState(self):
682682elif data == u"/" :
683683if not self .processSolidusInTag ():
684684self .state = self .states ["beforeAttributeName" ]
685- elif data == EOF :
685+ elif data is EOF :
686686self .tokenQueue .append ({"type" :"ParseError" ,"data" :
687687"unexpected-EOF-after-attribute-value" })
688688self .emitCurrentToken ()
@@ -738,7 +738,7 @@ def commentStartState(self):
738738"incorrect-comment" })
739739self .tokenQueue .append (self .currentToken )
740740self .state = self .states ["data" ]
741- elif data == EOF :
741+ elif data is EOF :
742742self .tokenQueue .append ({"type" :"ParseError" ,"data" :
743743"eof-in-comment" })
744744self .tokenQueue .append (self .currentToken )
@@ -757,7 +757,7 @@ def commentStartDashState(self):
757757"incorrect-comment" })
758758self .tokenQueue .append (self .currentToken )
759759self .state = self .states ["data" ]
760- elif data == EOF :
760+ elif data is EOF :
761761self .tokenQueue .append ({"type" :"ParseError" ,"data" :
762762"eof-in-comment" })
763763self .tokenQueue .append (self .currentToken )
@@ -772,7 +772,7 @@ def commentState(self):
772772data = self .stream .char ()
773773if data == u"-" :
774774self .state = self .states ["commentEndDash" ]
775- elif data == EOF :
775+ elif data is EOF :
776776self .tokenQueue .append ({"type" :"ParseError" ,"data" :
777777"eof-in-comment" })
778778self .tokenQueue .append (self .currentToken )
@@ -785,7 +785,7 @@ def commentEndDashState(self):
785785data = self .stream .char ()
786786if data == u"-" :
787787self .state = self .states ["commentEnd" ]
788- elif data == EOF :
788+ elif data is EOF :
789789self .tokenQueue .append ({"type" :"ParseError" ,"data" :
790790"eof-in-comment-end-dash" })
791791self .tokenQueue .append (self .currentToken )
@@ -808,7 +808,7 @@ def commentEndState(self):
808808self .tokenQueue .append ({"type" :"ParseError" ,"data" :
809809"unexpected-dash-after-double-dash-in-comment" })
810810self .currentToken ["data" ]+= data
811- elif data == EOF :
811+ elif data is EOF :
812812self .tokenQueue .append ({"type" :"ParseError" ,"data" :
813813"eof-in-comment-double-dash" })
814814self .tokenQueue .append (self .currentToken )
@@ -842,7 +842,7 @@ def beforeDoctypeNameState(self):
842842self .currentToken ["correct" ]= False
843843self .tokenQueue .append (self .currentToken )
844844self .state = self .states ["data" ]
845- elif data == EOF :
845+ elif data is EOF :
846846self .tokenQueue .append ({"type" :"ParseError" ,"data" :
847847"expected-doctype-name-but-got-eof" })
848848self .currentToken ["correct" ]= False
@@ -860,7 +860,7 @@ def doctypeNameState(self):
860860elif data == u">" :
861861self .tokenQueue .append (self .currentToken )
862862self .state = self .states ["data" ]
863- elif data == EOF :
863+ elif data is EOF :
864864self .tokenQueue .append ({"type" :"ParseError" ,"data" :
865865"eof-in-doctype-name" })
866866self .currentToken ["correct" ]= False
@@ -877,7 +877,7 @@ def afterDoctypeNameState(self):
877877elif data == u">" :
878878self .tokenQueue .append (self .currentToken )
879879self .state = self .states ["data" ]
880- elif data == EOF :
880+ elif data is EOF :
881881self .currentToken ["correct" ]= False
882882self .stream .unget (data )
883883self .tokenQueue .append ({"type" :"ParseError" ,"data" :
@@ -919,7 +919,7 @@ def beforeDoctypePublicIdentifierState(self):
919919self .currentToken ["correct" ]= False
920920self .tokenQueue .append (self .currentToken )
921921self .state = self .states ["data" ]
922- elif data == EOF :
922+ elif data is EOF :
923923self .tokenQueue .append ({"type" :"ParseError" ,"data" :
924924"eof-in-doctype" })
925925self .currentToken ["correct" ]= False
@@ -942,7 +942,7 @@ def doctypePublicIdentifierDoubleQuotedState(self):
942942self .currentToken ["correct" ]= False
943943self .tokenQueue .append (self .currentToken )
944944self .state = self .states ["data" ]
945- elif data == EOF :
945+ elif data is EOF :
946946self .tokenQueue .append ({"type" :"ParseError" ,"data" :
947947"eof-in-doctype" })
948948self .currentToken ["correct" ]= False
@@ -962,7 +962,7 @@ def doctypePublicIdentifierSingleQuotedState(self):
962962self .currentToken ["correct" ]= False
963963self .tokenQueue .append (self .currentToken )
964964self .state = self .states ["data" ]
965- elif data == EOF :
965+ elif data is EOF :
966966self .tokenQueue .append ({"type" :"ParseError" ,"data" :
967967"eof-in-doctype" })
968968self .currentToken ["correct" ]= False
@@ -985,7 +985,7 @@ def afterDoctypePublicIdentifierState(self):
985985elif data == ">" :
986986self .tokenQueue .append (self .currentToken )
987987self .state = self .states ["data" ]
988- elif data == EOF :
988+ elif data is EOF :
989989self .tokenQueue .append ({"type" :"ParseError" ,"data" :
990990"eof-in-doctype" })
991991self .currentToken ["correct" ]= False
@@ -1014,7 +1014,7 @@ def beforeDoctypeSystemIdentifierState(self):
10141014self .currentToken ["correct" ]= False
10151015self .tokenQueue .append (self .currentToken )
10161016self .state = self .states ["data" ]
1017- elif data == EOF :
1017+ elif data is EOF :
10181018self .tokenQueue .append ({"type" :"ParseError" ,"data" :
10191019"eof-in-doctype" })
10201020self .currentToken ["correct" ]= False
@@ -1037,7 +1037,7 @@ def doctypeSystemIdentifierDoubleQuotedState(self):
10371037self .currentToken ["correct" ]= False
10381038self .tokenQueue .append (self .currentToken )
10391039self .state = self .states ["data" ]
1040- elif data == EOF :
1040+ elif data is EOF :
10411041self .tokenQueue .append ({"type" :"ParseError" ,"data" :
10421042"eof-in-doctype" })
10431043self .currentToken ["correct" ]= False
@@ -1057,7 +1057,7 @@ def doctypeSystemIdentifierSingleQuotedState(self):
10571057self .currentToken ["correct" ]= False
10581058self .tokenQueue .append (self .currentToken )
10591059self .state = self .states ["data" ]
1060- elif data == EOF :
1060+ elif data is EOF :
10611061self .tokenQueue .append ({"type" :"ParseError" ,"data" :
10621062"eof-in-doctype" })
10631063self .currentToken ["correct" ]= False
@@ -1074,7 +1074,7 @@ def afterDoctypeSystemIdentifierState(self):
10741074elif data == ">" :
10751075self .tokenQueue .append (self .currentToken )
10761076self .state = self .states ["data" ]
1077- elif data == EOF :
1077+ elif data is EOF :
10781078self .tokenQueue .append ({"type" :"ParseError" ,"data" :
10791079"eof-in-doctype" })
10801080self .currentToken ["correct" ]= False
@@ -1091,7 +1091,7 @@ def bogusDoctypeState(self):
10911091if data == u">" :
10921092self .tokenQueue .append (self .currentToken )
10931093self .state = self .states ["data" ]
1094- elif data == EOF :
1094+ elif data is EOF :
10951095# XXX EMIT
10961096self .stream .unget (data )
10971097self .tokenQueue .append (self .currentToken )