[telepathy-glib/master] add tools/glib-errors-str-gen.py

Guillaume Desmottes guillaume.desmottes at collabora.co.uk
Fri May 22 04:01:30 PDT 2009


---
 tools/glib-errors-str-gen.py |   24 ++++++++++++++++++++++++
 1 files changed, 24 insertions(+), 0 deletions(-)
 create mode 100644 tools/glib-errors-str-gen.py

diff --git a/tools/glib-errors-str-gen.py b/tools/glib-errors-str-gen.py
new file mode 100644
index 0000000..d646e4a
--- /dev/null
+++ b/tools/glib-errors-str-gen.py
@@ -0,0 +1,24 @@
+#!/usr/bin/python
+
+import sys
+import xml.dom.minidom
+
+from libglibcodegen import NS_TP, camelcase_to_upper
+
+class Generator(object):
+    def __init__(self, dom):
+        self.dom = dom
+        self.errors = self.dom.getElementsByTagNameNS(NS_TP, 'errors')[0]
+
+    def __call__(self):
+
+        for error in self.errors.getElementsByTagNameNS(NS_TP, 'error'):
+            ns = error.parentNode.getAttribute('namespace')
+            nick = error.getAttribute('name').replace(' ', '')
+            name = 'TP_ERROR_STR_' + camelcase_to_upper(nick.replace('.', ''))
+
+            print '#define %s "%s.%s"' % (name, ns, nick)
+
+if __name__ == '__main__':
+    argv = sys.argv[1:]
+    Generator(xml.dom.minidom.parse(argv[0]))()
-- 
1.5.6.5




More information about the telepathy-commits mailing list