aboutsummaryrefslogtreecommitdiffstats
path: root/build-aux/qmi-codegen/Field.py
diff options
context:
space:
mode:
Diffstat (limited to 'build-aux/qmi-codegen/Field.py')
-rw-r--r--build-aux/qmi-codegen/Field.py47
1 files changed, 29 insertions, 18 deletions
diff --git a/build-aux/qmi-codegen/Field.py b/build-aux/qmi-codegen/Field.py
index 1c4ac90..0f73b06 100644
--- a/build-aux/qmi-codegen/Field.py
+++ b/build-aux/qmi-codegen/Field.py
@@ -53,6 +53,11 @@ class Field:
# e.g. "Qmi Message Ctl Something Output Result"
self.fullname = dictionary['fullname'] if 'fullname' in dictionary else self.prefix + ' ' + self.name
+ # libqmi version where the message was introduced
+ self.since = dictionary['since'] if 'since' in dictionary else None
+ if self.since is None:
+ raise ValueError('TLV ' + self.fullname + ' requires a "since" tag specifying the major version where it was introduced')
+
# Create our variable object
self.variable = VariableFactory.create_variable(dictionary, self.fullname, self.container_type)
@@ -108,20 +113,12 @@ class Field:
'underscore' : utils.build_underscore_name(self.name),
'prefix_camelcase' : utils.build_camelcase_name(self.prefix),
'prefix_underscore' : utils.build_underscore_name(self.prefix),
+ 'since' : self.since,
'static' : 'static ' if self.static else '' }
# Emit the getter header
template = (
'\n'
- '${static}gboolean ${prefix_underscore}_get_${underscore} (\n'
- ' ${prefix_camelcase} *self,\n'
- '${variable_getter_dec}'
- ' GError **error);\n')
- hfile.write(string.Template(template).substitute(translations))
-
- # Emit the getter source
- template = (
- '\n'
'/**\n'
' * ${prefix_underscore}_get_${underscore}:\n'
' * @self: a #${prefix_camelcase}.\n'
@@ -131,7 +128,18 @@ class Field:
' * Get the \'${name}\' field from @self.\n'
' *\n'
' * Returns: %TRUE if the field is found, %FALSE otherwise.\n'
+ ' *\n'
+ ' * Since: ${since}\n'
' */\n'
+ '${static}gboolean ${prefix_underscore}_get_${underscore} (\n'
+ ' ${prefix_camelcase} *self,\n'
+ '${variable_getter_dec}'
+ ' GError **error);\n')
+ hfile.write(string.Template(template).substitute(translations))
+
+ # Emit the getter source
+ template = (
+ '\n'
'${static}gboolean\n'
'${prefix_underscore}_get_${underscore} (\n'
' ${prefix_camelcase} *self,\n'
@@ -172,20 +180,12 @@ class Field:
'underscore' : utils.build_underscore_name(self.name),
'prefix_camelcase' : utils.build_camelcase_name(self.prefix),
'prefix_underscore' : utils.build_underscore_name(self.prefix),
+ 'since' : self.since,
'static' : 'static ' if self.static else '' }
# Emit the setter header
template = (
'\n'
- '${static}gboolean ${prefix_underscore}_set_${underscore} (\n'
- ' ${prefix_camelcase} *self,\n'
- '${variable_setter_dec}'
- ' GError **error);\n')
- hfile.write(string.Template(template).substitute(translations))
-
- # Emit the setter source
- template = (
- '\n'
'/**\n'
' * ${prefix_underscore}_set_${underscore}:\n'
' * @self: a #${prefix_camelcase}.\n'
@@ -195,7 +195,18 @@ class Field:
' * Set the \'${name}\' field in the message.\n'
' *\n'
' * Returns: %TRUE if @value was successfully set, %FALSE otherwise.\n'
+ ' *\n'
+ ' * Since: ${since}\n'
' */\n'
+ '${static}gboolean ${prefix_underscore}_set_${underscore} (\n'
+ ' ${prefix_camelcase} *self,\n'
+ '${variable_setter_dec}'
+ ' GError **error);\n')
+ hfile.write(string.Template(template).substitute(translations))
+
+ # Emit the setter source
+ template = (
+ '\n'
'${static}gboolean\n'
'${prefix_underscore}_set_${underscore} (\n'
' ${prefix_camelcase} *self,\n'