+ code_lines.append('%s xcb_parts[xcb_parts_idx].iov_len = 0;' % space)
+ code_lines.append('%s xcb_tmp = (char *) %s%s;' % (space, prefix_str, field.c_field_name))
+ code_lines.append('%s for(i=0; i<%s; i++) {'
+ % (space, _c_accessor_get_expr(field.type.expr, lenfield_prefix)))
+ code_lines.append('%s xcb_block_len = %s(xcb_tmp);' % (space, field.type.c_unserialize_name))
+ code_lines.append('%s xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;' % space)
+ code_lines.append('%s xcb_tmp += xcb_block_len;' % space)
+ code_lines.append('%s }' % space)
+ code_lines.append('%s xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;' % space)
+