class Mail::PartsList
def recursive_each(&block)
def recursive_each(&block) each do |part| if part.content_type == "message/rfc822" sub_list = Mail.new(part.body).parts else sub_list = part.parts end yield part sub_list.recursive_each(&block) end end