- result = ' {%d, ' % self.tag
- result += '(pb_type_t) ((int) ' + self.htype
- if self.ltype is not None:
- result += ' | (int) ' + self.ltype
- result += '),\n'
-
- if prev_field_name is None:
- result += ' offsetof(%s, %s),' % (self.struct_name, self.name)
- else:
- result += ' pb_delta_end(%s, %s, %s),' % (self.struct_name, self.name, prev_field_name)
-
- if self.htype == 'PB_HTYPE_OPTIONAL':
- result += '\n pb_delta(%s, has_%s, %s),' % (self.struct_name, self.name, self.name)
- elif self.htype == 'PB_HTYPE_ARRAY':
- result += '\n pb_delta(%s, %s_count, %s),' % (self.struct_name, self.name, self.name)
- else:
- result += ' 0,'
-
-
- if self.htype == 'PB_HTYPE_ARRAY':
- result += '\n pb_membersize(%s, %s[0]),' % (self.struct_name, self.name)
- result += ('\n pb_membersize(%s, %s) / pb_membersize(%s, %s[0]),'
- % (self.struct_name, self.name, self.struct_name, self.name))
- else:
- result += '\n pb_membersize(%s, %s),' % (self.struct_name, self.name)
- result += ' 0,'
+ result = ' PB_FIELD(%3d, ' % self.tag
+ result += '%-8s, ' % self.pbtype
+ result += '%s, ' % self.rules
+ result += '%s, ' % self.allocation
+ result += '%s, ' % self.struct_name
+ result += '%s, ' % self.name
+ result += '%s, ' % (prev_field_name or self.name)