Make generate-operator-out.py compatible with Python 3.x
Adapt generate-operator-out.py to work with both Python 2.x (x >= 6)
and 3.x
Change-Id: I20f1b212069f368f3cf289dfd6b2aaee393cac68
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
diff --git a/tools/generate-operator-out.py b/tools/generate-operator-out.py
index 6baa6e3..f666ad1 100755
--- a/tools/generate-operator-out.py
+++ b/tools/generate-operator-out.py
@@ -163,35 +163,35 @@
header_files.append(header_file)
ProcessFile(header_file)
- print '#include <iostream>'
- print
+ print('#include <iostream>')
+ print('')
for header_file in header_files:
header_file = header_file.replace(local_path + '/', '')
- print '#include "%s"' % header_file
+ print('#include "%s"' % header_file)
- print
+ print('')
for enum_name in _ENUMS:
- print '// This was automatically generated by %s --- do not edit!' % sys.argv[0]
+ print('// This was automatically generated by %s --- do not edit!' % sys.argv[0])
namespaces = _NAMESPACES[enum_name].split('::')
for namespace in namespaces:
- print 'namespace %s {' % namespace
+ print('namespace %s {' % namespace)
- print 'std::ostream& operator<<(std::ostream& os, const %s& rhs) {' % enum_name
- print ' switch (rhs) {'
+ print('std::ostream& operator<<(std::ostream& os, const %s& rhs) {' % enum_name)
+ print(' switch (rhs) {')
for (enum_value, enum_text) in _ENUMS[enum_name]:
- print ' case %s: os << "%s"; break;' % (enum_value, enum_text)
+ print(' case %s: os << "%s"; break;' % (enum_value, enum_text))
if not _ENUM_CLASSES[enum_name]:
- print ' default: os << "%s[" << static_cast<int>(rhs) << "]"; break;' % enum_name
- print ' }'
- print ' return os;'
- print '}'
+ print(' default: os << "%s[" << static_cast<int>(rhs) << "]"; break;' % enum_name)
+ print(' }')
+ print(' return os;')
+ print('}')
for namespace in reversed(namespaces):
- print '} // namespace %s' % namespace
- print
+ print('} // namespace %s' % namespace)
+ print('')
sys.exit(0)