code: def render(self):
          
          value = self.value
          if value is None:
              value = []
  
          fmt = [Int.fmt]
          data = [len(value)]
  
          for item_value in value:
              if issubclass(self.item_class, Primitive):
                  item = self.item_class(item_value)
              else:
                  item = item_value
  
              item_format, item_data = item.render()
              fmt.extend(item_format)
              data.extend(item_data)
  
          return "".join(fmt), data
docs: Creates a composite ``struct`` format and the data to render with it.
  
          The format and data are prefixed with a 32-bit integer denoting the
          number of elements, after which each of the items in the array value
          are ``render()``-ed and added to the format and data as well.