Sha256: 109a3160d22502778d6808775b2d20dd00b906923dc1cce9769e19c1d359e225

Contents?: true

Size: 767 Bytes

Versions: 154

Compression:

Stored size: 767 Bytes

Contents

# encoding: utf-8
module Mail

  # Field List class provides an enhanced array that keeps a list of 
  # email fields in order.  And allows you to insert new fields without
  # having to worry about the order they will appear in.
  class FieldList < Array

    include Enumerable

    def <<( new_field )
      current_entry = self.rindex(new_field)
      if current_entry
        self.insert((current_entry + 1), new_field)
      else
        insert_idx = -1
        self.each_with_index do |item, idx|
          case item <=> new_field
          when -1
            next
          when 0
            next
          when 1
            insert_idx = idx
            break
          end
        end
        insert(insert_idx, new_field)
      end
    end
    
  end
end

Version data entries

154 entries across 142 versions & 15 rubygems

Version Path
mail-2.5.5 lib/mail/field_list.rb
mail-2.5.5.rc1 lib/mail/field_list.rb
classiccms-0.7.5 vendor/bundle/gems/mail-2.4.4/lib/mail/field_list.rb
classiccms-0.7.4 vendor/bundle/gems/mail-2.4.4/lib/mail/field_list.rb
classiccms-0.7.3 vendor/bundle/gems/mail-2.4.4/lib/mail/field_list.rb
active_mailer-0.0.10 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/mail-2.4.4/lib/mail/field_list.rb
judge-2.0.5 vendor/bundle/ruby/2.1.0/gems/mail-2.4.4/lib/mail/field_list.rb
challah-1.0.0 vendor/bundle/gems/mail-2.5.4/lib/mail/field_list.rb
classiccms-0.7.2 vendor/bundle/gems/mail-2.4.4/lib/mail/field_list.rb
classiccms-0.7.1 vendor/bundle/gems/mail-2.4.4/lib/mail/field_list.rb
swipe-rails-0.0.5 vendor/bundle/gems/mail-2.5.4/lib/mail/field_list.rb
active_mailer-0.0.9 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/mail-2.4.4/lib/mail/field_list.rb
active_mailer-0.0.8 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/mail-2.4.4/lib/mail/field_list.rb
active_mailer-0.0.7 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/mail-2.4.4/lib/mail/field_list.rb
active_mailer-0.0.6 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/mail-2.4.4/lib/mail/field_list.rb
classiccms-0.7.0 vendor/bundle/gems/mail-2.4.4/lib/mail/field_list.rb
mail-2.5.4 lib/mail/field_list.rb
mail-2.2.20 lib/mail/field_list.rb
challah-1.0.0.beta3 vendor/bundle/gems/mail-2.5.3/lib/mail/field_list.rb
fc-webicons-0.0.4 vendor/bundle/ruby/1.9.1/gems/mail-2.5.3/lib/mail/field_list.rb