'Returns C{True} if the message UID is in the range defined by the
search query.
@type query: A L{list} of L{str}
@param query: A list representing the parsed form of the search
query. Its first element should be a L{str} that can be interpreted
as a sequence range, for example \'2:4,5:*\'.
@type id: L{int}
@param id: The sequence number of the message being checked.
@type msg: Provider of L{imap4.IMessage}
@param msg: The message being checked.
@type lastIDs: L{tuple}
@param lastIDs: A tuple of (last sequence id, last message id).
The I{last sequence id} is an L{int} containing the highest sequence
number of a message in the mailbox.  The I{last message id} is an
L{int} containing the highest UID of a message in the mailbox.'

def search_UID(self, query, id, msg, lastIDs):

    (lastSequenceId, lastMessageId) = lastIDs
    c = query.pop(0)
    m = parseIdList(c, lastMessageId)
    return (msg.getUID() in m)
