End of Life Ruby 3.0 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →
instance method
Net::POPMail#pop
pop( dest = +'' ) { |message_chunk| ... }
lib/net/pop.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.0.5/lib/net/pop.rb, line 802
def pop( dest = +'', &block ) # :yield: message_chunk
if block_given?
@command.retr(@number, &block)
nil
else
@command.retr(@number) do |chunk|
dest << chunk
end
dest
end
end
This method fetches the message. If called with a block, the message is yielded to the block one chunk at a time. If called without a block, the message is returned as a String. The optional dest argument will be prepended to the returned String; this argument is essentially obsolete.
Example without block
Example
POP3.start('pop.example.com', 110, 'YourAccount', 'YourPassword') do |pop| n = 1 pop.mails.each do |popmail| File.open("inbox/#{n}", 'w') do |f| f.write popmail.pop end popmail.delete n += 1 end end
Example with block
Example
POP3.start('pop.example.com', 110, 'YourAccount', 'YourPassword') do |pop| n = 1 pop.mails.each do |popmail| File.open("inbox/#{n}", 'w') do |f| popmail.pop do |chunk| #### f.write chunk end end n += 1 end end
This method raises a POPError if an error occurs.