about summary refs log tree commit diff
diff options
context:
space:
mode:
authorNguyễn Gia Phong <cnx@loang.net>2025-05-26 17:43:03 +0900
committerNguyễn Gia Phong <cnx@loang.net>2025-05-26 17:43:03 +0900
commitb37d71bca632c1e29a3402fbaf69a14843eab8f2 (patch)
tree6ab18eff0dc382ffcf7a1980d1749292a69a0c42
parentab17569f2a3ad8151774df5379ad55872154a7ee (diff)
downloadscadere-b37d71bca632c1e29a3402fbaf69a14843eab8f2.tar.gz
Accept non-str data in XML constructor
-rw-r--r--src/scadere/listen.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/scadere/listen.py b/src/scadere/listen.py
index 4a9ee46..aa80c32 100644
--- a/src/scadere/listen.py
+++ b/src/scadere/listen.py
@@ -69,10 +69,12 @@ def xml(tree, parent=None):
     else:
         elem = xml_subelement(parent, tag, attrs)
     for child in children:
-        if isinstance(child, str):
-            elem.text = child
-        else:
+        if isinstance(child, tuple):
             xml(child, elem)
+        elif isinstance(child, datetime):
+            elem.text = child.isoformat()
+        else:
+            elem.text = str(child)
     if parent is None:
         indent(elem)
     return elem