Class: TMail::AddressGroup

Inherits:
Object
  • Object
show all
Includes:
Enumerable, StrategyInterface
Defined in:
lib/action_mailer/vendor/tmail/address.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from StrategyInterface

#accept_strategy, create_dest, #decoded, #encoded

Methods included from Enumerable

#sort_by

Constructor Details

#initialize(name, addrs) ⇒ AddressGroup

Returns a new instance of AddressGroup.



151
152
153
154
# File 'lib/action_mailer/vendor/tmail/address.rb', line 151

def initialize( name, addrs )
  @name = name
  @addresses = addrs
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



156
157
158
# File 'lib/action_mailer/vendor/tmail/address.rb', line 156

def name
  @name
end

Instance Method Details

#==(other) ⇒ Object Also known as: eql?



158
159
160
# File 'lib/action_mailer/vendor/tmail/address.rb', line 158

def ==( other )
  other.respond_to? :to_a and @addresses == other.to_a
end

#[](idx) ⇒ Object



168
169
170
# File 'lib/action_mailer/vendor/tmail/address.rb', line 168

def []( idx )
  @addresses[idx]
end

#accept(strategy, dummy1 = nil, dummy2 = nil) ⇒ Object



222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
# File 'lib/action_mailer/vendor/tmail/address.rb', line 222

def accept( strategy, dummy1 = nil, dummy2 = nil )
  strategy.phrase @name
  strategy.meta ':'
  strategy.space
  first = true
  each do |mbox|
    if first
      first = false
    else
      strategy.meta ','
    end
    strategy.space
    mbox.accept strategy
  end
  strategy.meta ';'
  strategy.lwsp ''
end

#add(a) ⇒ Object Also known as: push



210
211
212
# File 'lib/action_mailer/vendor/tmail/address.rb', line 210

def add( a )
  @addresses.push a
end

#address_group?Boolean

Returns:

  • (Boolean)


147
148
149
# File 'lib/action_mailer/vendor/tmail/address.rb', line 147

def address_group?
  true
end

#delete(a) ⇒ Object



216
217
218
# File 'lib/action_mailer/vendor/tmail/address.rb', line 216

def delete( a )
  @addresses.delete a
end

#each(&block) ⇒ Object



180
181
182
# File 'lib/action_mailer/vendor/tmail/address.rb', line 180

def each( &block )
  @addresses.each(&block)
end

#each_address(&block) ⇒ Object



206
207
208
# File 'lib/action_mailer/vendor/tmail/address.rb', line 206

def each_address( &block )
  flatten.each(&block)
end

#empty?Boolean

Returns:

  • (Boolean)


176
177
178
# File 'lib/action_mailer/vendor/tmail/address.rb', line 176

def empty?
  @addresses.empty?
end

#flattenObject



194
195
196
197
198
199
200
201
202
203
204
# File 'lib/action_mailer/vendor/tmail/address.rb', line 194

def flatten
  set = []
  @addresses.each do |a|
    if a.respond_to? :flatten
      set.concat a.flatten
    else
      set.push a
    end
  end
  set
end

#hashObject



164
165
166
# File 'lib/action_mailer/vendor/tmail/address.rb', line 164

def hash
  map {|i| i.hash }.hash
end

#include?(a) ⇒ Boolean

Returns:

  • (Boolean)


190
191
192
# File 'lib/action_mailer/vendor/tmail/address.rb', line 190

def include?( a )
  @addresses.include? a
end

#sizeObject



172
173
174
# File 'lib/action_mailer/vendor/tmail/address.rb', line 172

def size
  @addresses.size
end

#to_aObject Also known as: to_ary



184
185
186
# File 'lib/action_mailer/vendor/tmail/address.rb', line 184

def to_a
  @addresses.dup
end