Applies (*mapfn) to all items (versions) in the given object's history. For each item we have three slots and (*mapfn) is called on each slot in turn and given the corresponding labels. The slots (in call order) are:
The call format is:
(*mapfn)(extra,item,count)
where the arguments have the following declarations and contents:
is passed in to the LIBLINCKS function as an extra application program parameter. It is not used within LIBLINCKS, and is intended as a pointer to a call block for application program arguments to the map function.
points to a bound label placed in the internal label buffer.
corresponds to the current slots:
Initialisation calls are done with a call to (*mapfn) with a NULL item and a zero `count'. The mapping function can return:
The store command label is omitted from the transient slots, but an extra case 2 call is inserted with a (label *)0 pointer; if the store command label values coincide with the version concerned, then the command label is in reality unknown and therefore the 2 call case is done with a (label *)0 pointer.
See section 10 for an example of using a mapfn.
Function returns: