Hi David,
as you may have seen I just incorporated the RFE's https://sourceforge.net/tracker/?func=detail&atid=684733&aid=1754740&group_id=119701,
https://sourceforge.net/tracker/?func=detail&atid=684733&aid=1754742&group_id=119701,
https://sourceforge.net/tracker/?func=detail&atid=684733&aid=1754744&group_id=119701,
https://sourceforge.net/tracker/?func=detail&atid=684733&aid=1754745&group_id=119701,
https://sourceforge.net/tracker/?func=detail&atid=684733&aid=1754746&group_id=119701, and https://sourceforge.net/tracker/?func=detail&atid=684733&aid=1754747&group_id=119701.
These RFE's define abstract methods for the collection classes, give default implementations and refactor some methods.
This is an attempt to help you gain an overview about the needed documentation changes:
Add the following methods to 'Collection':
Add the following methods to 'OrderedCollection':
- append - abstract method
- appendAll (===> copy description from Array, List, or Queue)
- difference (===> copy description from Array, List, or Queue)
- interSection (===> copy description from Array, List, or Queue)
- makeArray (===> copy description from Array, List, or Queue)
- subSet (===> copy description from Array, List, or Queue)
- union (===> copy description from Array, List, or Queue)
- xor (===> copy description from Array, List, or Queue)
Add the following method to 'MapCollection':
- putAll (===> copy description from Directory, Stem, or Table)
Add the following methods to 'SetCollection':
- []= (===> copy description from 'Bag' or 'Set')
- put (===> copy description from 'Bag' or 'Set')
Remove the following descriptions from 'Array':
- appendAll
- difference
- interSection
- subSet
- union
- xor
Remove the following methods from 'Bag':
Remove the following descriptions from 'Directory':
- difference
- interSection
- putAll
- subSet
- union
- xor
Remove the following descriptions from 'List':
- appendAll
- difference
- interSection
- subSet
- union
- xor
Remove the following descriptions from 'Queue':
- appendAll
- difference
- interSection
- subSet
- union
- xor
Remove the following descriptions from 'Relation':
Remove the following methods from 'Set':
Remove the following descriptions from 'Stem':
- difference
- interSection
- putAll
- subSet
- union
- xor
Remove the following descriptions from 'Table':
- difference
- interSection
- putAll
- subSet
- union
- xor
Logged In: YES
user_id=1125291
Originator: NO
Rony, I commented on the first RFE you committed changes to, but you might have missed it. You missed the "index" method on the Collection class.
Logged In: YES
user_id=662126
Originator: YES
Rick, thanks for the hint, I did miss your earlier post (it relates to 'item', but I think you meant 'index' as in this comment).
This is what I would propose then as a default implementation for the method "index" for the 'Collection' class:
----------- cut here ------------
::method 'index'
use strict arg item
idx=self~supplier~allItems~index(item)
if .nil=idx then / item not in collection, return .nil /
return .nil
return self~supplier~allIndexes~at(idx)
----------- cut here ------------
If this is o.k. I would commit this change.
Logged In: YES
user_id=931756
Originator: NO
Fixed in several revisions, the last one was 630.