class Net::IMAP::ESearchResult

def to_a; all&.numbers || partial&.to_a || [] end

checking if the server returned +SEARCH+ or +ESEARCH+ data.
Note that SearchResult also implements +to_a+, so it can be used without

the IMAP#search +RETURN+ options, #to_a returns an empty array.
returned no results or because +ALL+ and +PARTIAL+ were not included in
When both #all and #partial are +nil+, either because the server

numbers or UIDs, +to_a+ returns that set as an array of integers.
When either #all or #partial contains a SequenceSet of message sequence

:call-seq: to_a -> Array of integers
def to_a; all&.numbers || partial&.to_a || [] end