Functions needed for all collection classes
parameter ELEMENTTYPE = "%String";
The type (class name) of the elements stored in the collection.
The ClassType of the elements stored by this collection
as %RawString [ InitialExpression = ..#ELEMENTTYPE ];
The type (classname:propertyname) of the elements stored in the collection.
as %Integer [ InitialExpression = 0 ];
True if this collection is a 'literal object' so the Insert/Set should make a copy of the object
before inserting it.
Integer version of the object that has the collection data
True if this collection is read only
For stream collections this contains the stream root location
Called when the parent object is about to be removed so this collection can exist
in a disconnected state. It makes a copy of the parents collection information.
Returns true (1) if a property of this instance has been modified, otherwise false (0).
A TRUE result does not necessarily mean that any property has actually been changed. If
%IsModified() returns false then the object has not been modified. There are some
situations where we simply cannot efficiently detect a change in value. In these cases we
will set the modified status of the property.
method %SetModified(val As %Boolean)
Setting the modified state of the object.
Clears the contents of the array. Both the OID value is cleared.
abstract method DeSerialize(serialized As %String(MAXLEN=""))
Returns a %Status value indicating success or failure.
Deserialize from string created with Serialize back to collection
abstract method Serialize(force As %Integer = 0)
Serialize constructs a serialized form of the collection as a string