1ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh# Copyright 2006 Google, Inc. All Rights Reserved. 2ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh# Licensed to PSF under a Contributor Agreement. 3ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh 4ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh"""Fixer that turns <> into !=.""" 5ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh 6ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh# Local imports 7ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsiehfrom .. import pytree 8ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsiehfrom ..pgen2 import token 9ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsiehfrom .. import fixer_base 10ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh 11ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh 12ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsiehclass FixNe(fixer_base.BaseFix): 13ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh # This is so simple that we don't need the pattern compiler. 14ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh 15ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh _accept_type = token.NOTEQUAL 16ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh 17ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh def match(self, node): 18ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh # Override 19ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh return node.value == u"<>" 20ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh 21ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh def transform(self, node, results): 22ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh new = pytree.Leaf(token.NOTEQUAL, u"!=", prefix=node.prefix) 23ffab958fd8d42ed7227d83007350e61555a1fa36Andrew Hsieh return new 24