X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=generator%2Fnanopb_generator.py;h=f39614b367a7fa279cf5a07900c456c9538c38ee;hb=1f13e8cd2c5bb091677f35e53ae5757774e7d1ba;hp=3bac9a928debeaedf07146740e505ed6437d2b10;hpb=64947cb382271e2ab17dbf40ab634846d7d30ad9;p=apps%2Fagl-service-can-low-level.git diff --git a/generator/nanopb_generator.py b/generator/nanopb_generator.py index 3bac9a92..f39614b3 100644 --- a/generator/nanopb_generator.py +++ b/generator/nanopb_generator.py @@ -313,16 +313,19 @@ class ExtensionField(Field): raise NotImplementedError("Only 'optional' is supported for extension fields. " + "(%s.rules == %s)" % (self.fullname, self.rules)) + self.rules = 'OPTEXT' + def extension_decl(self): '''Declaration of the extension type in the .pb.h file''' - return 'extern const pb_extension_type_t %s;' % self.fullname + return 'extern const pb_extension_type_t %s;\n' % self.fullname def extension_def(self): '''Definition of the extension type in the .pb.c file''' + result = 'typedef struct {\n' result += str(self) - result += '} %s;\n' % self.struct_name - result += ('static const pb_field_t %s_field = %s;\n' % + result += '\n} %s;\n\n' % self.struct_name + result += ('static const pb_field_t %s_field = \n %s;\n\n' % (self.fullname, self.pb_field_t(None))) result += 'const pb_extension_type_t %s = {\n' % self.fullname result += ' NULL,\n'