CTF writer: Add function to add an integer environment field value
[babeltrace.git] / bindings / python / babeltrace / writer.py
index cd609afd730cf1c1e1120ff3c6b6abeed6a2b469..8ed18c6c9bb9adb5d936c0055a94671df432e130 100644 (file)
@@ -2141,11 +2141,23 @@ class Writer:
         Sets the CTF environment variable named *name* to value *value*
         (converted to a string).
 
-        :exc:`ValueError` is raised on error.
+        :exc:`ValueError` or `TypeError` is raised on error.
         """
 
-        ret = nbt._bt_ctf_writer_add_environment_field(self._w, str(name),
-                                                       str(value))
+        if type(name) != str:
+            raise TypeError("Field name must be a string.")
+
+        t = type(value)
+
+        if t == str:
+            ret = nbt._bt_ctf_writer_add_environment_field(self._w, name,
+                                                           value)
+        elif t == int:
+            ret = nbt._bt_ctf_writer_add_environment_field_int64(self._w,
+                                                                 name,
+                                                                 value)
+        else:
+            raise TypeError("Value type is not supported.")
 
         if ret < 0:
             raise ValueError("Could not add environment field to trace.")
This page took 0.024223 seconds and 4 git commands to generate.