From: <wda...@us...> - 2010-03-22 21:41:26
|
Revision: 5729 http://oorexx.svn.sourceforge.net/oorexx/?rev=5729&view=rev Author: wdashley Date: 2010-03-22 21:41:17 +0000 (Mon, 22 Mar 2010) Log Message: ----------- Rename all rexxref sgml files to xml. Modified Paths: -------------- docs/trunk/rexxref/Makefile Added Paths: ----------- docs/trunk/rexxref/classes.xml docs/trunk/rexxref/collclasses.xml docs/trunk/rexxref/collectionclassmethods.xml docs/trunk/rexxref/condtra.xml docs/trunk/rexxref/dire.xml docs/trunk/rexxref/dokey.xml docs/trunk/rexxref/errnum.xml docs/trunk/rexxref/errnums.xml docs/trunk/rexxref/funct.xml docs/trunk/rexxref/fundclasses.xml docs/trunk/rexxref/instrc.xml docs/trunk/rexxref/intro.xml docs/trunk/rexxref/iostrms.xml docs/trunk/rexxref/mapcollectionclassmethods.xml docs/trunk/rexxref/mig.xml docs/trunk/rexxref/numarit.xml docs/trunk/rexxref/objectclassmethods.xml docs/trunk/rexxref/oneof.xml docs/trunk/rexxref/orderableclassmethods.xml docs/trunk/rexxref/orderedcollectionclassmethods.xml docs/trunk/rexxref/parsingch.xml docs/trunk/rexxref/preface.xml docs/trunk/rexxref/provide.xml docs/trunk/rexxref/resvkey.xml docs/trunk/rexxref/rexutil.xml docs/trunk/rexxref/rexxref.xml docs/trunk/rexxref/secman.xml docs/trunk/rexxref/spvard.xml docs/trunk/rexxref/streamclasses.xml docs/trunk/rexxref/usepcom.xml docs/trunk/rexxref/utilityclasses.xml docs/trunk/rexxref/xconcur.xml docs/trunk/rexxref/xintdeb.xml Removed Paths: ------------- docs/trunk/rexxref/classes.sgml docs/trunk/rexxref/collclasses.sgml docs/trunk/rexxref/collectionclassmethods.sgml docs/trunk/rexxref/condtra.sgml docs/trunk/rexxref/dire.sgml docs/trunk/rexxref/dokey.sgml docs/trunk/rexxref/errnum.sgml docs/trunk/rexxref/errnums.sgml docs/trunk/rexxref/funct.sgml docs/trunk/rexxref/fundclasses.sgml docs/trunk/rexxref/instrc.sgml docs/trunk/rexxref/intro.sgml docs/trunk/rexxref/iostrms.sgml docs/trunk/rexxref/mapcollectionclassmethods.sgml docs/trunk/rexxref/mig.sgml docs/trunk/rexxref/numarit.sgml docs/trunk/rexxref/objectclassmethods.sgml docs/trunk/rexxref/oneof.sgml docs/trunk/rexxref/orderableclassmethods.sgml docs/trunk/rexxref/orderedcollectionclassmethods.sgml docs/trunk/rexxref/parsingch.sgml docs/trunk/rexxref/preface.sgml docs/trunk/rexxref/provide.sgml docs/trunk/rexxref/resvkey.sgml docs/trunk/rexxref/rexutil.sgml docs/trunk/rexxref/rexxref.sgml docs/trunk/rexxref/secman.sgml docs/trunk/rexxref/spvard.sgml docs/trunk/rexxref/streamclasses.sgml docs/trunk/rexxref/usepcom.sgml docs/trunk/rexxref/utilityclasses.sgml docs/trunk/rexxref/xconcur.sgml docs/trunk/rexxref/xintdeb.sgml Modified: docs/trunk/rexxref/Makefile =================================================================== --- docs/trunk/rexxref/Makefile 2010-03-22 21:20:09 UTC (rev 5728) +++ docs/trunk/rexxref/Makefile 2010-03-22 21:41:17 UTC (rev 5729) @@ -2,7 +2,7 @@ # # Description: Makefile for the Object Rexx Reference Documents. # -# Copyright (c) 2005-2007, Rexx Language Association. All rights reserved. +# Copyright (c) 2005-2010, Rexx Language Association. All rights reserved. # # This program and the accompanying materials are made available under # the terms of the Common Public License v1.0 which accompanies this @@ -47,40 +47,40 @@ ../shared/oorexx.html.dsl -SGML_FILES = collclasses.sgml \ - condtra.sgml \ - classes.sgml \ - streamclasses.sgml \ - utilityclasses.sgml \ - dire.sgml \ - errnum.sgml \ - errnums.sgml \ - funct.sgml \ - fundclasses.sgml \ - instrc.sgml \ - intro.sgml \ - iostrms.sgml \ - mig.sgml \ - numarit.sgml \ - oneof.sgml \ - parsingch.sgml \ - preface.sgml \ - provide.sgml \ - resvkey.sgml \ - rexutil.sgml \ - rexxref.sgml \ - secman.sgml \ - spvard.sgml \ - usepcom.sgml \ - xconcur.sgml \ - xintdeb.sgml \ - collectionclassmethods.sgml \ - mapcollectionclassmethods.sgml \ - orderedcollectionclassmethods.sgml \ - ../shared/legalstuff.sgml \ - ../shared/notices.sgml \ - ../shared/gethelp.sgml \ - ../shared/CPLv1.0.sgml +xml_FILES = collclasses.xml \ + condtra.xml \ + classes.xml \ + streamclasses.xml \ + utilityclasses.xml \ + dire.xml \ + errnum.xml \ + errnums.xml \ + funct.xml \ + fundclasses.xml \ + instrc.xml \ + intro.xml \ + iostrms.xml \ + mig.xml \ + numarit.xml \ + oneof.xml \ + parsingch.xml \ + preface.xml \ + provide.xml \ + resvkey.xml \ + rexutil.xml \ + rexxref.xml \ + secman.xml \ + spvard.xml \ + usepcom.xml \ + xconcur.xml \ + xintdeb.xml \ + collectionclassmethods.xml \ + mapcollectionclassmethods.xml \ + orderedcollectionclassmethods.xml \ + ../shared/legalstuff.xml \ + ../shared/notices.xml \ + ../shared/gethelp.xml \ + ../shared/CPLv1.0.xml HTML_IMAGE_FILES = ooRexxObjectClass.png \ ooRexxClassClass.png \ @@ -257,11 +257,11 @@ html: rexxref-html.zip -rexxref.pdf: $(PDF_IMAGE_FILES) $(STYLESHEET) $(JADETEXFMT) genindex.sgml svnrev.tmp - docbook2pdf -d ../shared/oorexx.print.dsl rexxref.sgml +rexxref.pdf: $(PDF_IMAGE_FILES) $(STYLESHEET) $(JADETEXFMT) genindex.xml svnrev.tmp + docbook2pdf -d ../shared/oorexx.print.dsl rexxref.xml -book1.htm: $(HTML_IMAGE_FILES) $(HTML_STYLESHEET) genindex.sgml svnrev.tmp - docbook2html -d ../shared/oorexx.html.dsl rexxref.sgml +book1.htm: $(HTML_IMAGE_FILES) $(HTML_STYLESHEET) genindex.xml svnrev.tmp + docbook2html -d ../shared/oorexx.html.dsl rexxref.xml rexxref-html.zip: book1.htm zip rexxref-html *.htm *.jpg *.png @@ -269,11 +269,11 @@ $(JADETEXFMT): $(HYPERREFCFG) pdftex -ini \&pdflatex pdfjadetex.ini -genindex.sgml: $(HTML_STYLESHEET) $(SGML_FILES) svnrev.tmp - collateindex.pl -N -o genindex.sgml - jade -t sgml -d ../shared/oorexx.html.dsl -V html-index rexxref.sgml +genindex.xml: $(HTML_STYLESHEET) $(xml_FILES) svnrev.tmp + collateindex.pl -N -o genindex.xml + jade -t xml -d ../shared/oorexx.html.dsl -V html-index rexxref.xml rm *.htm - collateindex.pl -p -g -o genindex.sgml HTML.index + collateindex.pl -p -g -o genindex.xml HTML.index svnrev.tmp: svnversion > svnrev.tmp @@ -282,6 +282,6 @@ clean: - rm -f *.log *.aux *.out *.fmt rexxref.pdf genindex.sgml *.htm *.zip \ + rm -f *.log *.aux *.out *.fmt rexxref.pdf genindex.xml *.htm *.zip \ HTML.index *.tmp Deleted: docs/trunk/rexxref/classes.sgml =================================================================== --- docs/trunk/rexxref/classes.sgml 2010-03-22 21:20:09 UTC (rev 5728) +++ docs/trunk/rexxref/classes.sgml 2010-03-22 21:41:17 UTC (rev 5729) @@ -1,107 +0,0 @@ -<!--######################################################################### - # - # Description: Open Object Rexx: Reference SGML file. - # - # Copyright (c) 2005-2009, Rexx Language Association. All rights reserved. - # Portions Copyright (c) 2004, IBM Corporation. All rights reserved. - # - # This program and the accompanying materials are made available under - # the terms of the Common Public License v1.0 which accompanies this - # distribution. A copy is also available at the following address: - # http://www.oorexx.org/license.html - # - # Redistribution and use in source and binary forms, with or - # without modification, are permitted provided that the following - # conditions are met: - # - # Redistributions of source code must retain the above copyright - # notice, this list of conditions and the following disclaimer. - # Redistributions in binary form must reproduce the above copyright - # notice, this list of conditions and the following disclaimer in - # the documentation and/or other materials provided with the distribution. - # - # Neither the name of Rexx Language Association nor the names - # of its contributors may be used to endorse or promote products - # derived from this software without specific prior written permission. - # - # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED - # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, - # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY - # OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - # - # Author(s): - # W. David Ashley <da...@us...> - # - ######################################################################### ---> -<chapter id="classes"><title>The Builtin Classes</title> -<para>This chapter describes all of the Rexx built-in classes.</para> - -<variablelist> -<varlistentry><term> -<link linkend="fundclasses">Fundamental Classes</link></term> -<listitem><para>This set of classes are the fundamental building blocks for all -other classes. It includes the <link linkend="clsObject">Object class</link>, -the <link linkend="clsClass">Class class</link>, -the <link linkend="clsString">String class</link>, -the <link linkend="clsMethod">Method class</link>, and -the <link linkend="clsRoutine">Routine class</link>, and -the <link linkend="clsPackage">Package class</link>, and -the <link linkend="clsMessage">Message class</link>.</para> -</listitem></varlistentry> -<varlistentry><term> -<link linkend="streamclasses">Stream Classes</link></term> -<listitem><para>This set of classes implement the classic Rexx streams. -It includes the <link linkend="clsStream">Stream class</link>, -the <link linkend="clsInputStream">InputStream class</link>, -the <link linkend="clsOutputStream">OutputStream class</link>, and -the <link linkend="clsInputOutputStream">InputOutputStream class</link>.</para> -</listitem></varlistentry> -<varlistentry><term> -<link linkend="CollectionClasses">Collection Classes</link></term> -<listitem><para>This set of classes implement object collections. -It includes the <link linkend="clsDirectory">Directory class</link>, -the <link linkend="clsProperties">Properties class</link>, -the <link linkend="clsRelation">Relation class</link>, -the <link linkend="clsStem">Stem class</link>, -the <link linkend="clsTable">Table class</link>, -the <link linkend="clsIdentityTable">IdentityTable class</link>, -the <link linkend="clsArray">Array class</link>, -the <link linkend="clsList">List class</link>, -the <link linkend="clsQueue">Queue class</link>, -the <link linkend="clsCircularQueue">CircularQueue class</link>, -the <link linkend="clsBag">Bag class</link>, and -the <link linkend="clsSet">Set class</link>.</para> -</listitem></varlistentry> -<varlistentry><term> -<link linkend="miscclasses">Utility Classes</link></term> -<listitem><para>This set of classes are utility in nature and hard to classify. -It includes the <link linkend="clsAlarm">Alarm class</link>, -the <link linkend="clsComparable">Comparable class</link>, -the <link linkend="clsComparator">Comparator class</link>, -the <link linkend="clsOrderable">Orderable class</link>, -the <link linkend="clsDateTime">DateTime class</link>, -the <link linkend="clsMutableBuffer">MutableBuffer class</link>, -the <link linkend="clsRegularExpression">RegularExpression class</link>, -the <link linkend="clsRexxContext">RexxContext class</link>, -the <link linkend="clsRexxQueue">RexxQueue class</link>, -the <link linkend="clsStreamSupplier">StreamSupplier class</link>, -the <link linkend="clsSupplier">Supplier class</link>, -the <link linkend="clsTimeSpan">TimeSpan class</link> -and the <link linkend="clsTimeSpan">WeakReference class</link>.</para> -</listitem></varlistentry> -</variablelist> - -&fundclasses; -&strmclasses; -&collclasses; -&utilityclasses; - -</chapter> Copied: docs/trunk/rexxref/classes.xml (from rev 5725, docs/trunk/rexxref/classes.sgml) =================================================================== --- docs/trunk/rexxref/classes.xml (rev 0) +++ docs/trunk/rexxref/classes.xml 2010-03-22 21:41:17 UTC (rev 5729) @@ -0,0 +1,107 @@ +<!--######################################################################### + # + # Description: Open Object Rexx: Reference SGML file. + # + # Copyright (c) 2005-2009, Rexx Language Association. All rights reserved. + # Portions Copyright (c) 2004, IBM Corporation. All rights reserved. + # + # This program and the accompanying materials are made available under + # the terms of the Common Public License v1.0 which accompanies this + # distribution. A copy is also available at the following address: + # http://www.oorexx.org/license.html + # + # Redistribution and use in source and binary forms, with or + # without modification, are permitted provided that the following + # conditions are met: + # + # Redistributions of source code must retain the above copyright + # notice, this list of conditions and the following disclaimer. + # Redistributions in binary form must reproduce the above copyright + # notice, this list of conditions and the following disclaimer in + # the documentation and/or other materials provided with the distribution. + # + # Neither the name of Rexx Language Association nor the names + # of its contributors may be used to endorse or promote products + # derived from this software without specific prior written permission. + # + # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, + # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY + # OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + # + # Author(s): + # W. David Ashley <da...@us...> + # + ######################################################################### +--> +<chapter id="classes"><title>The Builtin Classes</title> +<para>This chapter describes all of the Rexx built-in classes.</para> + +<variablelist> +<varlistentry><term> +<link linkend="fundclasses">Fundamental Classes</link></term> +<listitem><para>This set of classes are the fundamental building blocks for all +other classes. It includes the <link linkend="clsObject">Object class</link>, +the <link linkend="clsClass">Class class</link>, +the <link linkend="clsString">String class</link>, +the <link linkend="clsMethod">Method class</link>, and +the <link linkend="clsRoutine">Routine class</link>, and +the <link linkend="clsPackage">Package class</link>, and +the <link linkend="clsMessage">Message class</link>.</para> +</listitem></varlistentry> +<varlistentry><term> +<link linkend="streamclasses">Stream Classes</link></term> +<listitem><para>This set of classes implement the classic Rexx streams. +It includes the <link linkend="clsStream">Stream class</link>, +the <link linkend="clsInputStream">InputStream class</link>, +the <link linkend="clsOutputStream">OutputStream class</link>, and +the <link linkend="clsInputOutputStream">InputOutputStream class</link>.</para> +</listitem></varlistentry> +<varlistentry><term> +<link linkend="CollectionClasses">Collection Classes</link></term> +<listitem><para>This set of classes implement object collections. +It includes the <link linkend="clsDirectory">Directory class</link>, +the <link linkend="clsProperties">Properties class</link>, +the <link linkend="clsRelation">Relation class</link>, +the <link linkend="clsStem">Stem class</link>, +the <link linkend="clsTable">Table class</link>, +the <link linkend="clsIdentityTable">IdentityTable class</link>, +the <link linkend="clsArray">Array class</link>, +the <link linkend="clsList">List class</link>, +the <link linkend="clsQueue">Queue class</link>, +the <link linkend="clsCircularQueue">CircularQueue class</link>, +the <link linkend="clsBag">Bag class</link>, and +the <link linkend="clsSet">Set class</link>.</para> +</listitem></varlistentry> +<varlistentry><term> +<link linkend="miscclasses">Utility Classes</link></term> +<listitem><para>This set of classes are utility in nature and hard to classify. +It includes the <link linkend="clsAlarm">Alarm class</link>, +the <link linkend="clsComparable">Comparable class</link>, +the <link linkend="clsComparator">Comparator class</link>, +the <link linkend="clsOrderable">Orderable class</link>, +the <link linkend="clsDateTime">DateTime class</link>, +the <link linkend="clsMutableBuffer">MutableBuffer class</link>, +the <link linkend="clsRegularExpression">RegularExpression class</link>, +the <link linkend="clsRexxContext">RexxContext class</link>, +the <link linkend="clsRexxQueue">RexxQueue class</link>, +the <link linkend="clsStreamSupplier">StreamSupplier class</link>, +the <link linkend="clsSupplier">Supplier class</link>, +the <link linkend="clsTimeSpan">TimeSpan class</link> +and the <link linkend="clsTimeSpan">WeakReference class</link>.</para> +</listitem></varlistentry> +</variablelist> + +&fundclasses; +&strmclasses; +&collclasses; +&utilityclasses; + +</chapter> Deleted: docs/trunk/rexxref/collclasses.sgml =================================================================== --- docs/trunk/rexxref/collclasses.sgml 2010-03-22 21:20:09 UTC (rev 5728) +++ docs/trunk/rexxref/collclasses.sgml 2010-03-22 21:41:17 UTC (rev 5729) @@ -1,6772 +0,0 @@ -<!--######################################################################### - # - # Description: Open Object Rexx: Reference SGML file. - # - # Copyright (c) 2005-2009, Rexx Language Association. All rights reserved. - # Portions Copyright (c) 2004, IBM Corporation. All rights reserved. - # - # This program and the accompanying materials are made available under - # the terms of the Common Public License v1.0 which accompanies this - # distribution. A copy is also available at the following address: - # http://www.oorexx.org/license.html - # - # Redistribution and use in source and binary forms, with or - # without modification, are permitted provided that the following - # conditions are met: - # - # Redistributions of source code must retain the above copyright - # notice, this list of conditions and the following disclaimer. - # Redistributions in binary form must reproduce the above copyright - # notice, this list of conditions and the following disclaimer in - # the documentation and/or other materials provided with the distribution. - # - # Neither the name of Rexx Language Association nor the names - # of its contributors may be used to endorse or promote products - # derived from this software without specific prior written permission. - # - # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED - # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, - # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY - # OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - # - # Author(s): - # W. David Ashley <da...@us...> - # - ######################################################################### ---> -<section id="CollectionClasses"><title>The Collection Classes</title> -<indexterm><primary>Collection classes</primary></indexterm> -<para>A collection is an object that contains a number of -<emphasis role="italic">items</emphasis>, which can be any objects. Every item -stored in a Rexx collection has an associated index that you can use to -retrieve the item from the collection with the AT or [] methods.</para> -<para>Each collection defines its own acceptable index types. Rexx provides the -following collection classes:</para> - -<variablelist> -<varlistentry><term><link linkend="clsArray">Array</link></term> -<listitem><para>A sequenced collection of objects ordered by whole-number -indexes. -</para></listitem></varlistentry> -<varlistentry><term><link linkend="clsBag">Bag</link></term> -<listitem><para>A collection where the index and the item are the same object. Bag indexes -can be any object and each index can appear more than once. -</para></listitem></varlistentry> -<varlistentry><term><link linkend="clsCircularQueue">CircularQueue</link></term> -<listitem><para> -The CircularQueue class allows for storing objects in a circular queue -of a predefined size. Once the end of the queue has been reached, new item -objects are inserted from the beginning, replacing earlier entries. -The collected objects can be processed in FIFO (first in, first out) or in a -stack-like LIFO (last in, first out) order. -</para></listitem> -</varlistentry> -<varlistentry><term><link linkend="clsDirectory">Directory</link></term> -<listitem><para>A collection with character string indexes. Index comparisons are performed -using the string == comparison method. -</para></listitem></varlistentry> -<varlistentry><term><link linkend="clsList">List</link></term> -<listitem><para>A sequenced collection that lets you add new items at any position in -the sequence. A list generates and returns an index value for each item placed -in the list. The returned index remains valid until the item is removed from -the list. -</para></listitem></varlistentry> -<varlistentry><term><link linkend="clsProperties">Properties</link></term> -<listitem><para>A collection with character string indexes and values. -Properties collections include support for saving and loading from disk files. -</para></listitem></varlistentry> -<varlistentry><term><link linkend="clsQueue">Queue</link></term> -<listitem><para>A sequenced collection with the items ordered as a queue. You can remove -items from the head of the queue and add items at either its tail or its head. -Queues index the items with whole-number indexes, in the order in which the -items would be removed. The current head of the queue has index 1, the item -after the head item has index 2, up to the number of items in the queue. -</para></listitem></varlistentry> -<varlistentry><term><link linkend="clsRelation">Relation</link></term> -<listitem><para>A collection with indexes that can be any object. A relation -can contain duplicate indexes. -</para></listitem></varlistentry> -<varlistentry><term><link linkend="clsSet">Set</link></term> -<listitem><para>A collection where the index and the item are the same object. Set indexes -can be any object and each index is unique. -</para></listitem></varlistentry> -<varlistentry><term><link linkend="clsStem">Stem</link></term> -<listitem><para>A collection with character string indexes constructed from one -or more string segments. Index comparisons are performed using the string == -comparison method. -</para></listitem></varlistentry> -<varlistentry><term><link linkend="clsTable">Table</link></term> -<listitem><para>A collection with indexes that can be any object. -A table contains no duplicate indexes. -</para></listitem></varlistentry> -<varlistentry><term><link linkend="clsIdentityTable">IdentityTable</link></term> -<listitem><para>A collection with indexes that can be any object. The -IdentityTable class determines index item matches by using an object identity -comparison. With object identity matches, an index will only match the same -object instance. An identity table contains no duplicate indexes. -</para></listitem></varlistentry> -</variablelist> - -<section id="CollectionClassOrganization"><title> -Organization of the Collection Classes</title> -<indexterm><primary>Collection class</primary> -<secondary>organization</secondary></indexterm> -<para>The following shows the logical organization of the Collection Classes. -This does NOT represent the order that methods are inherited but rather -the organization of the classes.</para> - -<programlisting> -<link linkend="clsCollection">Collection</link> - <link linkend="clsMapCollection">MapCollection</link> - <link linkend="clsDirectory">Directory</link> - <link linkend="clsProperties">Properties</link> - <link linkend="clsRelation">Relation</link> - <link linkend="clsStem">Stem</link> - <link linkend="clsTable">Table</link> - <link linkend="clsIdentityTable">IdentityTable</link> - <link linkend="clsOrderedCollection">OrderedCollection</link> - <link linkend="clsArray">Array</link> - <link linkend="clsList">List</link> - <link linkend="clsQueue">Queue</link> - <link linkend="clsCircularQueue">CircularQueue</link> - <link linkend="clsSetCollection">SetCollection</link> - <link linkend="clsBag">Bag</link> - <link linkend="clsSet">Set</link> -</programlisting> -</section> - -<section id="clsCollection"><title>The Collection Class</title> -<indexterm><primary>Collection class</primary></indexterm> -<para>The Collection class is a MIXIN class that defines the basic set of -methods implemented by all Collections. Many of the Collection class methods -are abstract and must be implemented the inheriting subclasses. -</para> -<figure><title>The Collection Class</title> -<mediaobject> -<imageobject> -<!-- Note! - if we include a /imagedata tag we get an error for DSSSL! --> -<imagedata fileref="ooRexxCollectionsClass"> -</imageobject> -</mediaobject> -</figure> - -<section id="mthCollectionAtGet"><title>[]</title> -<indexterm><primary>[] method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>[] method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ - +-,-----+ - V | ->>-[---index-+-]----------------------------------------------->< -]]> -</programlisting> - -<para>Returns the item associated with the specified -<emphasis role="italic">index</emphasis> or -<emphasis role="italic">index</emphasis>es. If the collection has no item associated -with the specified <emphasis role="italic">index</emphasis> or -<emphasis role="italic">index</emphasis>es, this method returns the -Nil object. This is an abstract method that must be implemented by a -subclasses. -</para> -</section> - -<section id="mthCollectionPutSet"><title>[]=</title> -<indexterm><primary>[]= method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>[]= method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ - +-,-----+ - V | ->>-[---index-+-]=value----------------------------------------->< -]]> -</programlisting> - -<para>Add an item to the collection at the specified index. This is an abstract -method that must be implemented by a subclasses. -</para> -</section> - -<section id="mthCollectionAllIndexes"><title>allIndexes</title> -<indexterm><primary>allIndexes method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>allIndexes method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-allIndexes-------------------------------------------------->< -]]> -</programlisting> - -<para>Return an array of all indexes used by this collection. This is an -abstract method that must be implemented by a subclasses. -</para> -</section> - -<section id="mthCollectionAllItems"><title>allItems</title> -<indexterm><primary>allItems method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>allItems method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-allItems---------------------------------------------------->< -]]> -</programlisting> - -<para>Return an array containing all items stored in the collection. -This is an abstract method that must be implemented by a subclasses.</para> -</section> - -<section id="mthCollectionAt"><title>at</title> -<indexterm><primary>at method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>at method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ - +-,-----+ - V | ->>-at(---index-+-)--------------------------------------------->< -]]> -</programlisting> - -<para>Returns the item associated with the specified -<emphasis role="italic">index</emphasis> or -<emphasis role="italic">index</emphasis>es. If the collection has no item associated -with the specified <emphasis role="italic">index</emphasis> or -<emphasis role="italic">index</emphasis>es, this method returns the -Nil object. -This is an abstract method that must be implemented by a subclasses.</para> -</section> - -<section id="mthCollectionDifference"><title>difference</title> -<indexterm><primary>difference method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>difference method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-difference(argument)---------------------------------------->< -]]> -</programlisting> - -<para>Returns a new collection (of the same class as the receiver) containing -only those items from the receiver whose indexes the -<emphasis role="italic">argument</emphasis> collection -does not contain. The <emphasis role="italic">argument</emphasis> can be any -collection class object. The -<emphasis role="italic">argument</emphasis> must also -allow all of the index values in the receiver collection.</para> -</section> - -<section id="mthCollectionHasIndex"><title>hasIndex</title> -<indexterm><primary>hasIndex method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>hasIndex method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ - +-,-----+ - V | ->>-hasIndex(---index-+-)--------------------------------------->< -]]> -</programlisting> - -<para>Returns <computeroutput>1</computeroutput> (true) if the array contains -an item associated with the specified index or indexes. Returns -<computeroutput>0</computeroutput> (false) otherwise.</para> -</section> - -<section id="mthCollectionHasItem"><title>hasItem</title> -<indexterm><primary>hasItem method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>hasItem method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-hasItem(item)----------------------------------------------->< -]]> -</programlisting> - -<para>Returns <computeroutput>1</computeroutput> (true) if the collection contains -the specified item at any index location. Returns -<computeroutput>0</computeroutput> (false) otherwise.</para> -</section> - -<section id="mthCollectionIndex"><title>index</title> -<indexterm><primary>index method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>index method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-index(item)------------------------------------------------->< -]]> -</programlisting> - -<para>Return the index associated with <emphasis role="italic">item</emphasis>. -If item occurs more than once in the collection, the returned index value is -undetermined. This is an abstract method which must be implemented by a -subclass of this class. -</para> -</section> - -<section id="mthCollectionIntersection"><title>intersection</title> -<indexterm><primary>intersection method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>intersection method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-intersection(argument)-------------------------------------->< -]]> -</programlisting> - -<para>Returns a new collection (of the same class as the receiver) containing -only those items from the receiver whose indexes are in both the receiver -collection and the <emphasis role="italic">argument</emphasis> collection. -The <emphasis role="italic">argument</emphasis> can be any -collection class object. -The <emphasis role="italic">argument</emphasis> must also allow all of the -index values in the receiver collection.</para> -</section> - -<section id="mthCollectionItems"><title>items</title> -<indexterm><primary>items method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>items method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-items------------------------------------------------------->< -]]> -</programlisting> - -<para>Returns the number of items in the collection.</para> -</section> - -<section id="mthCollectionMakeArray"><title>makeArray</title> -<indexterm><primary>makeArray method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>makeArray method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-makeArray--------------------------------------------------->< -]]> -</programlisting> - -<para>Returns a single-index array with the same number of items as the receiver -object. Any index with no associated item is omitted from the new array. -Items in the new array will have the same order as the source array. -</para> -</section> - -<section id="mthCollectionPut"><title>put</title> -<indexterm><primary>put method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>put method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ - +--------+ - V | ->>-put(item---,index-+-)--------------------------------------->< -]]> -</programlisting> - -<para>Add an item to the collection at the specified index. This is an abstract -method that must be implemented by a subclass if this class. -</para> -</section> - -<section id="mthCollectionSubset"><title>subset</title> -<indexterm><primary>subset method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>subset method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-subset(argument)-------------------------------------------->< -]]> -</programlisting> - -<para>Returns <computeroutput>1</computeroutput> (true) if all indexes in the -receiver collection are also contained in the -<emphasis role="italic">argument</emphasis> collection; returns -<computeroutput>0</computeroutput> (false) otherwise. The -<emphasis role="italic">argument</emphasis> can be any -collection class object. -The <emphasis role="italic">argument</emphasis> must also allow all of the -index values in the receiver collection.</para> -</section> - -<section id="mthCollectionSupplier"><title>supplier</title> -<indexterm><primary>supplier method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>supplier method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-supplier---------------------------------------------------->< -]]> -</programlisting> - -<para>Returns a <link linkend="clsSupplier">Supplier object</link> for the -collection. The supplier allows you to enumerate through the index/item pairs -for the collection. The supplier is created from a snapshot of the collection -and is unaffected by subsequent changes to the collection's contents. -</para> -</section> - -<section id="mthCollectionUnion"><title>union</title> -<indexterm><primary>union method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>union method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-union(argument)--------------------------------------------->< -]]> -</programlisting> - -<para>Returns a new collection of the same class as the receiver that contains -all the items from the receiver collection and selected items from the -<emphasis role="italic">argument</emphasis> collection. This method includes -an item from <emphasis role="italic">argument</emphasis> in -the new collection only if there is no item with the same associated index -in the receiver collection and the method has not already included an item -with the same index. The order in which this method selects items in -<emphasis role="italic">argument</emphasis> is unspecified (the program -should not rely on any order.). The -<emphasis role="italic">argument</emphasis> can be any -collection class object. The -<emphasis role="italic">argument</emphasis> must also allow all of the -index values in the receiver collection.</para> -</section> - -<section id="mthCollectionXor"><title>xor</title> -<indexterm><primary>xor method</primary> -<secondary>of Collection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>xor method</secondary> -<tertiary>of Collection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-xor(argument)----------------------------------------------->< -]]> -</programlisting> - -<para>Returns a new collection of the same class as the receiver that contains -all items from the receiver collection and the -<emphasis role="italic">argument</emphasis> collection; -all indexes that appear in both collections are removed. The -<emphasis role="italic">argument</emphasis> can be any -collection class object. -The <emphasis role="italic">argument</emphasis> must also allow all of the -index values in the receiver collection.</para> -</section> -</section> - -<section id="clsMapCollection"><title>The MapCollection Class</title> -<indexterm><primary>MapCollection class</primary></indexterm> -<para>The MapCollection class is a MIXIN class that defines the basic set of -methods implemented by all collections that use create a mapping from an index -object to a value. -</para> -<figure><title>The MapCollection class</title> -<mediaobject> -<imageobject> -<!-- Note! - if we include a /imagedata tag we get an error for DSSSL! --> -<imagedata fileref="ooRexxMapCollectionClass"> -</imageobject> -</mediaobject> -</figure> - -<para>This class is defined as a mixin class.</para> - -<section><title>Inherited Methods</title> - -&objclsmthods; -&collclsmthods; - -</section> - -<section id="mthMapCollectionPutAll"><title>putAll</title> -<indexterm><primary>putAll method</primary> -<secondary>of MapCollection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>putAll method</secondary> -<tertiary>of MapCollection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-putAll(collection)------------------------------------------>< -]]> -</programlisting> -<para>Adds all items <emphasis role="italic">collection</emphasis> to the target directory. The -<emphasis role="italic">collection</emphasis> argument can be any object that supports a supplier -method. Items from <emphasis role="italic">collection</emphasis> are added using the index values returned by the supplier. The item -indexes from the source <emphasis role="italic">collection</emphasis> must be strings. The items are -added in the order provided by the supplier object. -If duplicate -indexes exist in <emphasis role="italic">collection</emphasis>, the last item provided by the -supplier will overwrite previous items with the same index. -</para> -</section> - -<section id="mthMapCollectionMakeArray"><title>makeArray</title> -<indexterm><primary>makeArray method</primary> -<secondary>of MapCollection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>makeArray method</secondary> -<tertiary>of MapCollection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-makeArray--------------------------------------------------->< -]]> -</programlisting> - -<para>Returns a single-index array of the index values used by the receiver object. -The index objects will not be ordered in any predictable order. -</para> -</section> -</section> - -<section id="clsOrderedCollection"><title>The OrderedCollection Class</title> -<indexterm><primary>OrderedCollection class</primary></indexterm> -<para>The OrderedCollection class is a MIXIN class that defines the basic set of -methods implemented by all collections that have an inherent index ordering, -such as an array or a list. -</para> -<figure><title>The OrderedCollection class</title> -<mediaobject> -<imageobject> -<!-- Note! - if we include a /imagedata tag we get an error for DSSSL! --> -<imagedata fileref="ooRexxOrderedCollectionClass"> -</imageobject> -</mediaobject> -</figure> - -<para>This class is defined as a mixin class.</para> - -<section id="mthOrderedCollectionAppend"><title>append</title> -<indexterm><primary>append method</primary> -<secondary>of OrederedCollection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>append method</secondary> -<tertiary>of OrderedCollection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-append(item)------------------------------------------------>< -]]> -</programlisting> - -<para>Append an item to the end of the collection ordering. -This is an abstract method that must be implemented by a subclass -if this class.</para> -</section> - -<section id="mthOrderedCollectionAppendAll"><title>appendAll</title> -<indexterm><primary>appendAll method</primary> -<secondary>of OrderedCollection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>appendAll method</secondary> -<tertiary>of OrderedCollection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-appendAll(collection)--------------------------------------->< -]]> -</programlisting> - -<para>Appends all items in collection to the end of the target collection. The -<emphasis role="italic">collection</emphasis> may be any object that implements an -allItems() method.</para> -</section> - -<section id="mthOrderedCollectionDifference"><title>difference</title> -<indexterm><primary>difference method</primary> -<secondary>of OrderedCollection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>difference method</secondary> -<tertiary>of OrderedCollection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-difference(argument)---------------------------------------->< -]]> -</programlisting> - -<para>Returns a new collection (of the same class as the receiver) containing -only those items from the receiver that are not also contained in the -<emphasis role="italic">argument</emphasis> collection. The -<emphasis role="italic">argument</emphasis> can be any collection class object. -</para> -</section> - -<section id="mthOrderedCollectionIntersection"><title>intersection</title> -<indexterm><primary>intersection method</primary> -<secondary>of OrderedCollection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>intersection method</secondary> -<tertiary>of OrderedCollection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-intersection(argument)-------------------------------------->< -]]> -</programlisting> - -<para>Returns a new collection (of the same class as the receiver) containing -only those items from the receiver that are in both the receiver collection and -the <emphasis role="italic">argument</emphasis> collection. The <emphasis -role="italic">argument</emphasis> can be any collection class object. -</para> -</section> - -<section id="mthOrderedCollectionSubset"><title>subset</title> -<indexterm><primary>subset method</primary> -<secondary>of OrderedCollection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>subset method</secondary> -<tertiary>of OrderedCollection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-subset(argument)-------------------------------------------->< -]]> -</programlisting> - -<para>Returns <computeroutput>1</computeroutput> (true) if all items in the -receiver collection are also contained in the -<emphasis role="italic">argument</emphasis> collection; returns -<computeroutput>0</computeroutput> (false) otherwise. The -<emphasis role="italic">argument</emphasis> can be any -collection class object. -</para> -</section> - -<section id="mthOrderedCollectionUnion"><title>union</title> -<indexterm><primary>union method</primary> -<secondary>of OrderedCollection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>union method</secondary> -<tertiary>of OrderedCollection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-union(argument)--------------------------------------------->< -]]> -</programlisting> - -<para>Returns a new collection of the same class as the receiver that contains -all the items from the receiver collection and selected items from the -<emphasis role="italic">argument</emphasis> collection. This method includes -an item from <emphasis role="italic">argument</emphasis> in -the new collection only if there is no equivalent item -in the receiver collection and the method has not already included. The order in -which this method selects items in -<emphasis role="italic">argument</emphasis> is unspecified (the program -should not rely on any order.). The -<emphasis role="italic">argument</emphasis> can be any -collection class object. -</para> -</section> - -<section id="mthOrderedCollectionXor"><title>xor</title> -<indexterm><primary>xor method</primary> -<secondary>of OrderedCollection class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>xor method</secondary> -<tertiary>of OrderedCollection class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-xor(argument)----------------------------------------------->< -]]> -</programlisting> - -<para>Returns a new collection of the same class as the receiver that contains -all items from the receiver collection and the -<emphasis role="italic">argument</emphasis> collection; -all items that appear in both collections are removed. The -<emphasis role="italic">argument</emphasis> can be any -collection class object. -</para> -</section> -</section> - -<section id="clsSetCollection"><title>The SetCollection Class</title> -<indexterm><primary>SetCollection class</primary></indexterm> -<para>This is a tagging mixin class only and does not define any methods of -its own. Collections that implement SetCollection are MapCollections that -constrain the index and item to be be the same object.</para> -<figure><title>The SetCollection class</title> -<mediaobject> -<imageobject> -<!-- Note! - if we include a /imagedata tag we get an error for DSSSL! --> -<imagedata fileref="ooRexxSetCollectionClass"> -</imageobject> -</mediaobject> -</figure> - -<para>This class is defined as a mixin class.</para> - -<section><title>Inherited Methods</title> - -&objclsmthods; -&collclsmthods; - -</section> -</section> - -<section id="clsArray"><title>The Array Class</title> -<indexterm><primary>Array class</primary></indexterm> -<indexterm><primary>class</primary> -<secondary>Array class</secondary></indexterm> -<indexterm><primary>Ordered collection classes</primary> -<secondary>Array class</secondary></indexterm> - -<para> An array is a possibly sparse collection with indexes -that are positive whole numbers. You can reference array items by using one -or more indexes. The number of indexes is the same as the number of dimensions -of the array. This number is called the dimensionality of the array.</para> -<para>Array items can be any valid Rexx object. If an object has not been -assigned to an array index then that index is considered to contain the NIL -object. -</para> -<figure><title>The Array class and methods</title> -<mediaobject> -<imageobject> -<!-- Note! - if we include a /imagedata tag we get an error for DSSSL! --> -<imagedata fileref="ooRexxArrayClass"> -</imageobject> -</mediaobject> -</figure> -<note><title>Note</title> -<para>The Array class also has available class methods that its -metaclass, the <link linkend="clsClass">Class class</link>, defines. -It also inherits methods from the <link linkend="clsOrderedCollection">Ordered Collection -class</link>. -</para></note> -<para>Array objects are variable-sized. The dimensionality of an array is fixed, -but the size of each dimension is variable. When you create an array, you -can specify a hint about how many elements you expect to put into the array -or the array's dimensionality. However, you do not need to specify a size -or dimensionality of an array when you are creating it. You can use any -whole-number indexes to reference items in an array.</para> -<para id="paraArrayIndex"> - For any array method that takes an index, the index may be specified as either individual arguments or - as an array of indexes. For example, the following are equivalent: -</para> -<programlisting> - x = myarray[1,2,3] -- retrieves an item from a multi-dimension array - index = .array~of(1,2,3) -- create an index list - x = myarray[index] -- also retrieves from "1,2,3" -</programlisting> -<para>Methods such as <link linkend="mthArrayIndex">index()</link> that return -index items will return a single numeric value for single-dimension arrays and -an array of indexes for multi-dimension arrays.</para> - -<section><title>Inherited Methods</title> - -&objclsmthods; -&collclsmthods; -&ocollclsmthods; - -</section> - -<section id="mthArrayNew"><title>new (Class Method)</title> -<indexterm><primary>new method</primary> -<secondary>of Array class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>new method</secondary> -<tertiary>of Array class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-new-+----------------+-------------------------------------->< - | +-,----+ | - | V | | - +-(----size-+--)-+ -]]> -</programlisting> - -<para> Returns a new empty array. If you specify -any <emphasis role="italic">size</emphasis> arguments, -the size is taken as a hint about how big each dimension -should be. The Array classes uses this only to allocate the initial array -object. For multiple dimension arrays, you can also specify how much -space is to be allocated initially for each dimension of the array. -</para> -<para>Each <emphasis role="italic">size</emphasis> argument must a non-negative -whole number. -If it is <computeroutput>0</computeroutput>, the corresponding dimension is -initially empty.</para> -<para><emphasis role="bold">Examples:</emphasis></para> -<indexterm><primary>examples</primary> -<secondary>of method</secondary></indexterm> -<programlisting> - a = .array~new() -- create an new, empty array -</programlisting> -</section> - -<section id="mthArrayOf"><title>of (Class Method)</title> -<indexterm><primary>of method</primary> -<secondary>of Array class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>of method</secondary> -<tertiary>of Array class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-of-+----------------+--------------------------------------->< - | +-,----+ | - | V | | - +-(----item-+--)-+ -]]> -</programlisting> - -<para>Returns a newly created -single-index array containing the specified -<emphasis role="italic">item</emphasis> objects. The first -<emphasis role="italic">item</emphasis> has index 1, the second has index 2, -and so on.</para> -<para>If you use the OF method and omit any argument items, the returned array -does not include the indexes corresponding to those you omitted.</para> -<para><emphasis role="bold">Examples:</emphasis></para> -<indexterm><primary>examples</primary> -<secondary>of method</secondary></indexterm> -<programlisting> - a = .array~of("Fred", "Mike", "David") - - do name over a - say name -- displays "Fred", "Mike", and "David" - end -</programlisting> -</section> - -<section id="mthArrayAtGet"><title>[]</title> -<indexterm><primary>[] method</primary> -<secondary>of Array class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>[] method</secondary> -<tertiary>of Array class</tertiary></indexterm> -<programlisting> -<![CDATA[ - +-,-----+ - V | ->>-[---index-+-]----------------------------------------------->< -]]> -</programlisting> - -<para>Returns the same value as the <link linkend="mthArrayAt">at()</link> -method.</para> -<para> - Note that the <link linkend="paraArrayIndex">index</link> argument may also be specified as an array of - indexes. -</para> -</section> - -<section id="mthArrayPutSet"><title>[]=</title> -<indexterm><primary>[]= method</primary> -<secondary>of Array class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>[]= method</secondary> -<tertiary>of Array class</tertiary></indexterm> -<programlisting> -<![CDATA[ - +-,-----+ - V | ->>-[---index-+-]=value----------------------------------------->< -]]> -</programlisting> - -<para>This method is the same as the <link linkend="mthArrayPut">put()</link> -method.</para> -<para> - Note that the <link linkend="paraArrayIndex">index</link> argument may also be specified as an array of - indexes. -</para> -</section> - -<section id="mthArrayAllIndexes"><title>allIndexes</title> -<indexterm><primary>allIndexes method</primary> -<secondary>of Array class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>allIndexes method</secondary> -<tertiary>of Array class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-allIndexes-------------------------------------------------->< -]]> -</programlisting> - -<para>Returns an array of all index positions in the array containing items. -For multi-dimension arrays, each returned index will be an array of index -values. -</para> -<para><emphasis role="bold">Examples:</emphasis></para> -<indexterm><primary>examples</primary> -<secondary>allIndexes method</secondary></indexterm> -<programlisting> - a = .array~of("Fred", "Mike", "David") - - do name over a~allIndexes - say name -- displays "1", "2", and "3" - end - - a~remove(2) -- remove second item - - do name over a~allIndexes - say name -- displays "1" and "3" - end -</programlisting> -</section> - -<section id="mthArrayAllItems"><title>allItems</title> -<indexterm><primary>allItems method</primary> -<secondary>of Array class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>allItems method</secondary> -<tertiary>of Array class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-allItems---------------------------------------------------->< -]]> -</programlisting> - -<para>Returns an array of all items contained in the array.</para> -<para><emphasis role="bold">Examples:</emphasis></para> -<indexterm><primary>examples</primary> -<secondary>allItems method</secondary></indexterm> -<programlisting> - a = .array~of("Fred", "Mike", "David") - - do name over a~allItems - say name -- displays "Fred", "Mike", and "David" - end - - a~remove(2) -- remove second item - - do name over a~allItems - say name -- displays "Fred" and "David" - end -</programlisting> -</section> - -<section id="mthArrayAppend"><title>append</title> -<indexterm><primary>append method</primary> -<secondary>of Array class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>append method</secondary> -<tertiary>of Array class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-append(item)------------------------------------------------>< -]]> -</programlisting> - -<para>Appends an item to the array after the last item (the item with the -highest index). The return value is the index of newly added item. -</para> -<para><emphasis role="bold">Examples:</emphasis></para> -<indexterm><primary>examples</primary> -<secondary>append method</secondary></indexterm> -<programlisting> - a = .array~of("Mike", "Rick") - a~append("Fred") -- a = .array~of("Mike", "Rick", "Fred") -</programlisting> -</section> - -<section id="mthArrayAt"><title>at</title> -<indexterm><primary>at method</primary> -<secondary>of Array class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>at method</secondary> -<tertiary>of Array class</tertiary></indexterm> -<programlisting> -<![CDATA[ - +-,-----+ - V | ->>-at(---index-+-)--------------------------------------------->< -]]> -</programlisting> - -<para>Returns the item associated with the specified -<emphasis role="italic">index</emphasis> or -<emphasis role="italic">index</emphasis>es. If the array has no item associated -with the specified <emphasis role="italic">index</emphasis> or -<emphasis role="italic">index</emphasis>es, this method returns the -Nil object.</para> -<para> - Note that the <link linkend="paraArrayIndex">index</link> argument may also be specified as an array of - indexes. -</para> -<para><emphasis role="bold">Examples:</emphasis></para> -<indexterm><primary>examples</primary> -<secondary>at method</secondary></indexterm> -<programlisting> - a = .array~of("Mike", "Rick") - say a~at(2) -- says: "Rick" -</programlisting> -</section> - -<section id="mthArrayDimension"><title>dimension</title> -<indexterm><primary>dimension method</primary> -<secondary>of Array class</secondary></indexterm> -<indexterm><primary>method</primary> -<secondary>dimension method</secondary> -<tertiary>of Array class</tertiary></indexterm> -<programlisting> -<![CDATA[ ->>-dimension-+-----+------------------------------------------->< - +-(n)-+ -]]> -</programlisting> - -<para>Returns the current size (upper bound) of dimension -<emphasis role="italic">n</emphasis> (a positive -whole number). If you omit <emphasis role="italic">n</emphasis>, -this method returns the dimensionality -(number of dimensions) of the array. If the number of dimensions has not been -determined, <computeroutput>0</computeroutput> is returned.</para> -<para><emphasis role="bold">Examples:</emphasis></para> -<indexterm><primary>examples</primary> -<secondary>dimension method</secondary></indexterm> -<programlisting> - a = .array~of(,"Mike", "Rick") - say a~dimension -- says: 1 (number of dimensions in the array) - say a~dimension(1) -- says: 3 (upper bound of dimension one) - - a = .array~new~~put("Mike",1,1)~~put("Rick",1,2) - say a~dimension -- says: 2 (number of dimensions in the array) - say a~dimension(1) -- says: 1 (upper bound of dimension one) - say a~dimension(2) -- says: 2 (upper bound of dimension tw... [truncated message content] |