id	summary	reporter	owner	description	type	status	priority	component	severity	resolution	keywords	cc
110	"remove unused ""if"" statements"	py4fun@…	xi	"Remove ""if"" statements which are always evaluated to the same result from resolver, scanner and serializer
{{{
Index: lib/yaml/resolver.py
===================================================================
--- lib/yaml/resolver.py	(revision 307)
+++ lib/yaml/resolver.py	(working copy)
@@ -158,7 +158,7 @@
             return self.DEFAULT_SCALAR_TAG
         elif kind is SequenceNode:
             return self.DEFAULT_SEQUENCE_TAG
-        elif kind is MappingNode:
+        else:
             return self.DEFAULT_MAPPING_TAG
 
 class Resolver(BaseResolver):
Index: lib/yaml/scanner.py
===================================================================
--- lib/yaml/scanner.py	(revision 307)
+++ lib/yaml/scanner.py	(working copy)
@@ -126,13 +126,10 @@
         # Return the next token, but do not delete if from the queue.
         while self.need_more_tokens():
             self.fetch_more_tokens()
-        if self.tokens:
-            return self.tokens[0]
+        return self.tokens[0]
 
     def get_token(self):
         # Return the next token.
-        while self.need_more_tokens():
-            self.fetch_more_tokens()
         if self.tokens:
             self.tokens_taken += 1
             return self.tokens.pop(0)
Index: lib/yaml/serializer.py
===================================================================
--- lib/yaml/serializer.py	(revision 307)
+++ lib/yaml/serializer.py	(working copy)
@@ -98,7 +98,7 @@
                     self.serialize_node(item, node, index)
                     index += 1
                 self.emit(SequenceEndEvent())
-            elif isinstance(node, MappingNode):
+            else: # MappingNode
                 implicit = (node.tag
                             == self.resolve(MappingNode, node.value, True))
                 self.emit(MappingStartEvent(alias, node.tag, implicit,

}}}"	enhancement	new	low	pyyaml	minor			
