def sort_parts!
      @parts.each do |p|
        p.body.set_sort_order(@part_sort_order)
        p.body.sort_parts!
      end
      @parts.sort!(@part_sort_order)
    end
def sort_parts!
      @parts.each do |p|
        p.body.set_sort_order(@part_sort_order)
        p.body.sort_parts!
      end
      @parts.sort!(@part_sort_order)
    end
Allows you to sort the parts according to the default sort order, or the sort order you
 set with :set_sort_order.

 sort_parts! is also called from :encode, so there is no need for you to call this explicitly