The rexxpg book lists in "Chapter 4. The Basics of Classes" all ooRexx classes. The listing is not correctly indented as the root class Object is not shown as the topmost class.
Before correcting anything I also created a little program that would create the ooRexx class tree automatically. While doing so, it would become possible to add additional information to the listed classes, e.g. whether a class is a mixin and for classes using multiple inheritance which classes they inherit (maybe in parentheses and in italic). The motivation would be to have So here are both renderings (there classes for which questions are formulated at the bottom are highlighted in red): Object Alarm AlarmNotification Message ArgUtil Array Bag BagMixin Buffer Class Collection MapCollection Bag Directory Properties IdentityTable Relation Set Stem StringTable Table OrderedCollection Array List Queue CircularQueue SetCollection Bag Set Comparable DateTime File String TimeSpan Comparator CaselessColumnComparator CaselessComparator CaselessDescendingComparator ColumnComparator DescendingComparator InvertingComparator NumericComparator DateTime Directory Properties EventSemaphore File IdentityTable InputOutputStream Stream InputStream InputOutputStream Stream List LocalServer ManyItemMixin Message MessageNotification Message Method Monitor MutableBuffer MutexSemaphore OLEObject OLEVariant Orderable DateTime File TimeSpan OutputStream InputOutputStream Stream Package Pointer Queue CircularQueue Relation RexxContext RexxInfo RexxQueue Routine Set SetMixin StackFrame Stem String StringTable Supplier StreamSupplier SupplierMixin Table Ticker TimeSpan Validate VariableReference WeakReference And here with the additional information: Object Alarm AlarmNotification /(mixin)/ Message /(inherit MessageNotification, AlarmNotification)/ ArgUtil Array /(inherit OrderedCollection)/ Bag /(inherit MapCollection, SetCollection)/ BagMixin Buffer Class Collection /(mixin)/ MapCollection /(mixin)/ Bag /(inherit MapCollection, SetCollection)/ Directory /(inherit MapCollection)/ Properties IdentityTable /(inherit MapCollection)/ Relation /(inherit MapCollection)/ Set /(inherit MapCollection, SetCollection)/ Stem /(inherit MapCollection)/ StringTable /(inherit MapCollection)/ Table /(inherit MapCollection)/ OrderedCollection /(mixin)/ Array /(inherit OrderedCollection)/ List /(inherit OrderedCollection)/ Queue /(inherit OrderedCollection)/ CircularQueue SetCollection /(mixin)/ Bag /(inherit MapCollection, SetCollection)/ Set /(inherit MapCollection, SetCollection)/ Comparable /(mixin)/ DateTime /(inherit Comparable, Orderable)/ File /(inherit Comparable, Orderable)/ String /(inherit Comparable)/ TimeSpan /(inherit Comparable, Orderable)/ Comparator /(mixin)/ CaselessColumnComparator /(mixin)/ CaselessComparator /(mixin)/ CaselessDescendingComparator /(mixin)/ ColumnComparator /(mixin)/ DescendingComparator /(mixin)/ InvertingComparator /(mixin)/ NumericComparator /(mixin)/ DateTime /(inherit Comparable, Orderable)/ Directory /(inherit MapCollection)/ Properties EventSemaphore File /(inherit Comparable, Orderable)/ IdentityTable /(inherit MapCollection)/ InputOutputStream /(mixin) (inherit InputStream, OutputStream)/ Stream /(mixin)/ InputStream /(mixin)/ InputOutputStream /(mixin) (inherit InputStream, OutputStream)/ Stream /(mixin)/ List /(inherit OrderedCollection)/ LocalServer ManyItemMixin Message /(inherit MessageNotification, AlarmNotification)/ MessageNotification /(mixin)/ /Message (inherit MessageNotification, AlarmNotification)/ Method Monitor MutableBuffer MutexSemaphore OLEObject OLEVariant Orderable /(mixin)/ DateTime /(inherit Comparable, Orderable)/ File /(inherit Comparable, Orderable)/ TimeSpan /(inherit Comparable, Orderable)/ OutputStream /(mixin)/ InputOutputStream /(mixin) (inherit InputStream, OutputStream)/ Stream /(mixin)/ Package Pointer Queue /(inherit OrderedCollection)/ CircularQueue Relation /(inherit MapCollection)/ RexxContext RexxInfo RexxQueue Routine Set /(inherit MapCollection, SetCollection)/ SetMixin StackFrame Stem /(inherit MapCollection)/ String /(inherit Comparable)/ StringTable /(inherit MapCollection)/ Supplier StreamSupplier SupplierMixin Table /(inherit MapCollection)/ Ticker TimeSpan /(inherit Comparable, Orderable)/ Validate VariableReference WeakReference Questions: 1. What is the purpose of the classes: BagMixin, ManyItemsMixin, SetMixin and SupplierMixin? 1. They carry the name "mixin" but are not inherited by the exposed Rexx classes. 2. They cannot be fetched via their environment name like .BagMixin. 3. Should they be listed in the class object's SUBCLASSES array at all? 2. Should the classes ArgUtil and LocalServer be documented or left out? 1. ArgUtil was never documented and supposedly Validate is the successor and should be used instead. 2. If LocalServer should get documented, where could I find the respective information? 3. Should the classes OLEObject and OLEVariant be documented or left out? (They only exist in the Windows version and are documented separately in the Windows reference book.) 4. Should the short or the long form be usedj, which informs about multiple inheritance related classes? ---rony
_______________________________________________ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel