MessageSet PureBasic Reference Documentation

MessageSet

Current Version: 9.5.0.73

Represents a collection of email message sequence numbers or UIDs on an IMAP server.

Object Creation

obj.i = CkMessageSet::ckCreate()

; Make sure to dispose of the object when finished like this:
CkMessageSet::ckDispose(obj);

Properties

Count
Declare.i ckCount(obj.i) ; (read-only)

The number of message UIDs (or sequence numbers) in this message set.

top
HasUids
Declare.i ckHasUids(obj.i)
Declare setCkHasUids(obj.i, value.i)

If 1 then the message set contains UIDs, otherwise it contains sequence numbers.

top
LastMethodSuccess
Declare.i ckLastMethodSuccess(obj.i)
Declare setCkLastMethodSuccess(obj.i, value.i)

Indicate whether the last method call succeeded or failed. A value of 1 indicates success, a value of 0 indicates failure. This property is automatically set for method calls. It is not modified by property accesses. The property is automatically set to indicate success for the following types of method calls:

  • Any method that returns a string.
  • Any method returning a Chilkat object, binary bytes, or a date/time.
  • Any method returning a standard boolean status value where success = 1 and failure = 0.
  • Any method returning an integer where failure is defined by a return value less than zero.

Note: Methods that do not fit the above requirements will always set this property equal to 1. For example, a method that returns no value (such as a "void" in C++) will technically always succeed.

top

Methods

ContainsId
Declare.i ckContainsId(obj.i, msgId.l)

Returns 1 if the msgId is contained in the message set.

top
FromCompactString
Declare.i ckFromCompactString(obj.i, str.s)

Loads the message set from a compact-string representation. Here are some examples:

Non-Compact String

Compact String

1,2,3,4,5

1:5

1,2,3,4,5,8,9,10

1:5,8:10

1,3,4,5,8,9,10

1,3:5,8:10

top
GetId
Declare.i ckGetId(obj.i, index.l)

Returns the message ID of the Nth message in the set. (indexing begins at 0). Returns -1 if the index is out of range.

top
InsertId
Declare ckInsertId(obj.i, id.l)

Inserts a message ID into the set. If the ID already exists, a duplicate is not inserted.

top
LoadTaskResult
Declare.i ckLoadTaskResult(obj.i, task.i)
Introduced in version 9.5.0.52

Loads the message set from a completed asynchronous task.

Returns 1 for success, 0 for failure.

top
RemoveId
Declare ckRemoveId(obj.i, id.l)

Removes a message ID from the set.

top
ToCommaSeparatedStr
Declare.s ckToCommaSeparatedStr(obj.i)

Returns a string of comma-separated message IDs. (This is the non-compact string format.)

Returns an empty string on failure. Use the LastMethodSuccess property to check for success.

top
ToCompactString
Declare.s ckToCompactString(obj.i)

Returns the set of message IDs represented as a compact string. Here are some examples:

Non-Compact String

Compact String

1,2,3,4,5

1:5

1,2,3,4,5,8,9,10

1:5,8:10

1,3,4,5,8,9,10

1,3:5,8:10

Returns an empty string on failure. Use the LastMethodSuccess property to check for success.

top