Index: third_party/google-endpoints/libfuturize/fixes/fix_print_with_import.py |
diff --git a/third_party/google-endpoints/libfuturize/fixes/fix_print_with_import.py b/third_party/google-endpoints/libfuturize/fixes/fix_print_with_import.py |
new file mode 100644 |
index 0000000000000000000000000000000000000000..5308d9252a8e1f4990a12036a870afbee30d3ef1 |
--- /dev/null |
+++ b/third_party/google-endpoints/libfuturize/fixes/fix_print_with_import.py |
@@ -0,0 +1,23 @@ |
+""" |
+For the ``future`` package. |
+ |
+Turns any print statements into functions and adds this import line: |
+ |
+ from __future__ import print_function |
+ |
+at the top to retain compatibility with Python 2.6+. |
+""" |
+ |
+from libfuturize.fixes.fix_print import FixPrint |
+from libfuturize.fixer_util import future_import |
+ |
+class FixPrintWithImport(FixPrint): |
+ run_order = 7 |
+ def transform(self, node, results): |
+ # Add the __future__ import first. (Otherwise any shebang or encoding |
+ # comment line attached as a prefix to the print statement will be |
+ # copied twice and appear twice.) |
+ future_import(u'print_function', node) |
+ n_stmt = super(FixPrintWithImport, self).transform(node, results) |
+ return n_stmt |
+ |