home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyc (Python 2.6)
-
- """Fixer that changes 'a ,b' into 'a, b'.
-
- This also changes '{a :b}' into '{a: b}', but does not touch other
- uses of colons. It does not touch other uses of whitespace.
-
- """
- from import pytree
- from pgen2 import token
- from import fixer_base
-
- class FixWsComma(fixer_base.BaseFix):
- explicit = True
- PATTERN = "\n any<(not(',') any)+ ',' ((not(',') any)+ ',')* [not(',') any]>\n "
- COMMA = pytree.Leaf(token.COMMA, ',')
- COLON = pytree.Leaf(token.COLON, ':')
- SEPS = (COMMA, COLON)
-
- def transform(self, node, results):
- new = node.clone()
- comma = False
- for child in new.children:
- if child in self.SEPS:
- prefix = child.get_prefix()
- if prefix.isspace() and '\n' not in prefix:
- child.set_prefix('')
-
- comma = True
- continue
- if comma:
- prefix = child.get_prefix()
- if not prefix:
- child.set_prefix(' ')
-
-
- comma = False
-
- return new
-
-
-