Sha256: 309dfd66570e4c9fb1175eb2ce5a3773b152b5d3b78e9b508b64b7fe1f6a5be9
Contents?: true
Size: 867 Bytes
Versions: 72
Compression:
Stored size: 867 Bytes
Contents
# encoding: utf-8 # frozen_string_literal: true 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 # Insert the field in sorted order. # # Heavily based on bisect.insort from Python, which is: # Copyright (C) 2001-2013 Python Software Foundation. # Licensed under <http://docs.python.org/license.html> # From <http://hg.python.org/cpython/file/2.7/Lib/bisect.py> def <<( new_field ) lo = 0 hi = size while lo < hi mid = (lo + hi).div(2) if new_field < self[mid] hi = mid else lo = mid + 1 end end insert(lo, new_field) end end end
Version data entries
72 entries across 56 versions & 13 rubygems