(self, data, name)
return tree
Refactor a given input string.

        Args:
            data: a string holding the code to be refactored.
            name: a human-readable name for use in error/log messages.

        Returns:
            An AST corresponding to the refactored input stream; None if
            there were errors during the parse.
Refactor a given input string.
Refactor a given input string .
def refactor_string(self, data, name):
        """Refactor a given input string.

        Args:
            data: a string holding the code to be refactored.
            name: a human-readable name for use in error/log messages.

        Returns:
            An AST corresponding to the refactored input stream; None if
            there were errors during the parse.
        """
        features = _detect_future_features(data)
        if "print_function" in features:
            self.driver.grammar = pygram.python_grammar_no_print_statement
        try:
            tree = self.driver.parse_string(data)
        except Exception as err:
            self.log_error("Can't parse %s: %s: %s",
                           name, err.__class__.__name__, err)
            return
        finally:
            self.driver.grammar = self.grammar
        tree.future_features = features
        self.log_debug("Refactoring %s", name)
        self.refactor_tree(tree, name)
        return tree
def refactor_string ( self , data , name ) : features = _detect_future_features ( data ) if "print_function" in features : self . driver . grammar = pygram . python_grammar_no_print_statement try : tree = self . driver . parse_string ( data ) except Exception as err : self . log_error ( "Can't parse %s: %s: %s" , name , err . __class__ . __name__ , err ) return finally : self . driver . grammar = self . grammar tree . future_features = features self . log_debug ( "Refactoring %s" , name ) self . refactor_tree ( tree , name ) return tree