[2.2.1] Apply reviewed header file (Base to Collection)
[platform/framework/native/appfw.git] / inc / FBaseColLinkedListT.h
index 01c1b71..417b67f 100644 (file)
@@ -35,11 +35,11 @@ template< class Type > class __LinkedListNodeT;
 
 /**
  * @class LinkedListT
- * @brief This class represents a template-based collection of objects that can be individually accessed by index.
+ * @brief This class represents a template-based collection of objects that can be individually accessed by an index.
  *
  * @since 2.0
  *
- * The %LinkedListT class represents a template-based collection of objects that can be individually accessed by index.
+ * The %LinkedListT class represents a template-based collection of objects that can be individually accessed by an index.
  *
  * For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/base/arraylist_linkedlist.htm">ArrayList and LinkedList</a>.
  *
@@ -130,7 +130,7 @@ public:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   obj                             An object to add
+        * @param[in]   obj                             The object to add
         * @exception   E_SUCCESS               The method is successful.
         * @exception   E_OUT_OF_MEMORY The memory is insufficient.
         * @see Remove()
@@ -161,10 +161,11 @@ public:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   collection                      A collection to add
+        * @param[in]   collection                      The collection to add
         * @exception   E_SUCCESS                       The method is successful.
-        * @exception   E_INVALID_OPERATION     The current state of the instance prohibits the execution of the specified operation, or
-        *                                                                      the specified @c collection is modified during the operation of this method.
+        * @exception   E_INVALID_OPERATION     Either of the following conditions has occurred:
+        *                                                                      - The current state of the instance prohibits the execution of the specified operation.
+        *                                                                      - The specified @c collection is modified during the operation of this method.
         * @see                 RemoveItems()
         */
        virtual result AddItems(const ICollectionT< Type >& collection)
@@ -179,16 +180,15 @@ public:
        }
 
        /**
-        * Gets an enumerator to this list.
+        * Gets the enumerator of this list.
         *
         * @since 2.0
         *
-        * @return              An enumerator (an instance of the IEnumeratorT derived class) of this list, @n
+        * @return              The enumerator (an instance of the IEnumeratorT derived class) of this list, @n
         *                              else @c null if an exception occurs
         * @exception   E_SUCCESS               The method is successful.
         * @exception   E_OUT_OF_MEMORY The memory is insufficient.
         * @remarks             The specific error code can be accessed using the GetLastResult() method.
-        * @see                 Tizen::Base::Collection::IEnumeratorT
         */
        virtual IEnumeratorT< Type >* GetEnumeratorN(void) const
        {
@@ -207,18 +207,18 @@ CATCH:
        }
 
        /**
-        * Gets a bidirectional enumerator (an instance of the IBidirectionalEnumeratorT derived class) of this list.
+        * Gets the bidirectional enumerator (an instance of the IBidirectionalEnumeratorT derived class) of this list.
         *
         * @since 2.0
         *
-        * @return                      An instance of the IBidirectionalEnumeratorT derived class if successful, @n
+        * @return                      An instance of the IBidirectionalEnumeratorT derived class, @n
         *                                      else @c null if an exception occurs
         * @exception           E_SUCCESS                       The method is successful.
         * @exception           E_OUT_OF_MEMORY         The memory is insufficient.
-        * @remarks             Use this method to obtain a bidirectional enumerator (an instance of the IBidirectionalEnumeratorT derived class)
-        *                                      to iterate over a collection (an instance of the IListT derived class).
-        *                                      The specific error code can be accessed using the GetLastResult() method.
-        * @see                         Tizen::Base::Collection::IBidirectionalEnumeratorT
+        * @remarks
+        *                                      - Use this method to obtain a bidirectional enumerator (an instance of the IBidirectionalEnumeratorT derived class)
+        *                                      to iterate over a collection (an instance of the IListT derived class).
+        *                                      - The specific error code can be accessed using the GetLastResult() method.
         */
        virtual IBidirectionalEnumeratorT< Type >* GetBidirectionalEnumeratorN(void) const
        {
@@ -242,11 +242,13 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   index   The index of the object to read
-        * @param[out]  obj             An object to get from this list
+        * @param[in]   index                                   The index of the object to read
+        * @param[out]  obj                                             The object to get from this list
         * @exception   E_SUCCESS                               The method is successful.
-        * @exception   E_OUT_OF_RANGE                  The specified index is outside the bounds of the data structure, or
-        *                                                                              the specified @c index is equal to or greater than the number of elements or less than @c 0.
+        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred:
+        *                                                                              - The specified @c index is outside the bounds of the data structure.
+        *                                                                              - The specified @c index is either greater than or equal to the number of elements.
+        *                                                                              - The specified @c index is less than @c 0.
         * @see                 SetAt()
         */
        virtual result GetAt(int index, Type& obj) const
@@ -269,11 +271,13 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   index   The index of the object to read
-        * @param[out]  obj             An object to get from this list
+        * @param[in]   index                                   The index of the object to read
+        * @param[out]  obj                                             The object to get from this list
         * @exception   E_SUCCESS                               The method is successful.
-        * @exception   E_OUT_OF_RANGE                  The specified index is outside the bounds of the data structure, or
-        *                                                                              the specified @c index is equal to or greater than the number of elements or less than @c 0.
+        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred:
+        *                                                                          - The specified @c index is outside the bounds of the data structure.
+        *                                                                              - The specified @c index is either greater than or equal to the number of elements.
+        *                                                                              - The specified @c index is less than @c 0.
         * @see                 SetAt()
         */
        virtual result GetAt(int index, Type& obj)
@@ -296,14 +300,16 @@ CATCH:
         * @since 2.0
         *
         * @return              A pointer to the IListT derived instance, @n
-        *                              else @c null if an exception occurs.
-        * @param[in]   startIndex      The starting index of the range
-        * @param[in]   count           The number of elements to read
+        *                              else @c null if an exception occurs
+        * @param[in]   startIndex                              The starting index of the range
+        * @param[in]   count                                   The number of elements to read
         * @exception   E_SUCCESS                               The method is successful.
-        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred: @n
-        *                                                                              - The specified index is outside the bounds of the data structure. @n
-        *                                                                              - The specified @c startIndex is either equal to or greater than the number of elements or less than @c 0. @n
-        *                                                                              - The specified @c count is either greater than the number of elements starting from @c startIndex or less than @c 0.
+        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred:
+        *                                                                              - The specified @c index is outside the bounds of the data structure.
+        *                                                                              - The specified @c startIndex is either greater than or equal to the number of elements.
+     *                                                                         - The specified @c startIndex is less than @c 0. @n
+        *                                                                              - The specified @c count is greater than the number of elements starting from @c startIndex.
+     *                                                                         - The specified @c count is less than @c 0.
         *
         * @remarks             The specific error code can be accessed using the GetLastResult() method.
         */
@@ -363,10 +369,10 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   obj                     The object to locate
-        * @param[out]  index           The index of the object
+        * @param[in]   obj                                     The object to locate
+        * @param[out]  index                           The index of the object
         * @exception   E_SUCCESS                       The method is successful.
-        * @exception   E_OBJ_NOT_FOUND         The specified @c obj is not found.
+        * @exception   E_OBJ_NOT_FOUND         The specified @c obj has not been found.
         */
        virtual result IndexOf(const Type& obj, int& index) const
        {
@@ -390,14 +396,16 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   obj         The object to locate
-        * @param[in]   startIndex      The starting index for the search @n
-        *                                                      It must be less than the number of elements.
-        * @param[out]  index           The index of the object
+        * @param[in]   obj                             The object to locate
+        * @param[in]   startIndex                              The starting index for the search @n
+        *                                                                              It must be less than the number of elements.
+        * @param[out]  index                                   The index of the object
         * @exception   E_SUCCESS                               The method is successful.
-        * @exception   E_OUT_OF_RANGE                  The specified index is outside the bounds of the data structure, or
-        *                                                                              the specified @c startIndex is either equal to or greater than the number of elements in the list or less than @c 0.
-        * @exception   E_OBJ_NOT_FOUND                 The specified @c obj is not found.
+        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred:
+        *                                                                              - The specified @c index is outside the bounds of the data structure.
+        *                                                                              - The specified @c startIndex is either greater than or equal to the number of elements in the list.
+        *                                                                              - The specified @c startIndex is less than @c 0.
+        * @exception   E_OBJ_NOT_FOUND                 The specified @c obj has not been found.
         * @see                 LastIndexOf()
         */
        virtual result IndexOf(const Type& obj, int startIndex, int& index) const
@@ -416,16 +424,18 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   obj         The object to locate
-        * @param[in]   startIndex      The starting index of the range
-        * @param[in]   count           The number of elements to read
-        * @param[out]  index           The index of the object
+        * @param[in]   obj                             The object to locate
+        * @param[in]   startIndex                              The starting index of the range
+        * @param[in]   count                                   The number of elements to read
+        * @param[out]  index                                   The index of the object
         * @exception   E_SUCCESS                               The method is successful.
-        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred: @n
-        *                                                                              - The specified index is outside the bounds of the data structure. @n
-        *                                                                              - The specified @c startIndex is either equal to or greater than the number of elements in the list or less than @c 0. @n
-        *                                                                              - The specified @c count is either greater than the number of elements starting from @c startIndex or less than @c 0.
-        * @exception   E_OBJ_NOT_FOUND                 The specified @c obj is not found.
+        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred:
+        *                                                                              - The specified @c index is outside the bounds of the data structure.
+        *                                                                              - The specified @c startIndex is either greater than or equal to the number of elements in the list.
+        *                                                                              - The specified @c startIndex is less than @c 0.
+        *                                                                              - The specified @c count is greater than the number of elements starting from @c startIndex.
+        *                                                                              - The specified @c count is less than @c 0.
+        * @exception   E_OBJ_NOT_FOUND                 The specified @c obj has not been found.
         * @see                 LastIndexOf()
         */
        virtual result IndexOf(const Type& obj, int startIndex, int count, int& index) const
@@ -464,12 +474,14 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   obj             An object to insert
-        * @param[in]   index   The index at which the object must be inserted
+        * @param[in]   obj                                             The object to insert
+        * @param[in]   index                                   The index at which the object is inserted
         * @exception   E_SUCCESS                               The method is successful.
-        * @exception   E_OUT_OF_RANGE                  The specified index is outside the bounds of the data structure, or
-        *                                                                              the specified @c index is greater than the number of elements or less than @c 0.
-        * @remarks             If the @c index equals to the number of elements then the new element
+        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred:
+        *                                                                              - The specified @c index is outside the bounds of the data structure.
+        *                                                                              - The specified @c index is greater than the number of elements.
+        *                                                                              - The specified @c index is less than @c 0.
+        * @remarks             If the @c index is equal to the number of elements then the new elements
         *                              is added at the end of this list.
         * @see                 Add()
         * @see                 RemoveAt()
@@ -510,19 +522,22 @@ CATCH:
 
 
        /**
-        * Inserts the elements of the @c collection at the location specified.
+        * Inserts the elements of the collection at the specified location.
         *
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   collection      The collection to insert
-        * @param[in]   startIndex      The starting index at which the collection must be inserted
+        * @param[in]   collection                              The collection to insert
+        * @param[in]   startIndex                              The starting index at which the collection is inserted
         * @exception   E_SUCCESS                               The method is successful.
-        * @exception   E_OUT_OF_RANGE                  The specified index is outside the bounds of the data structure, or
-        *                                                                              the specified @c startIndex is either greater than the number of elements or less than @c 0.
-        * @exception   E_INVALID_OPERATION             The current state of the instance prohibits the execution of the specified operation, or
-        *                                                                              the specified @c collection is modified during the operation of this method.
-        * @remarks             If the @c startIndex equals to the number of elements then the new elements
+        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred:
+        *                                                                              - The specified @c index is outside the bounds of the data structure.
+        *                                                                              - The specified @c startIndex is greater than the number of elements.
+     *                                                                         - The specified @c startIndex is less than @c 0.
+        * @exception   E_INVALID_OPERATION             Either of the following conditions has occurred:
+        *                                                                              - The current state of the instance prohibits the execution of the specified operation.
+        *                                                                              - The specified @c collection is modified during the operation of this method.
+        * @remarks             If the @c startIndex is equal to the number of elements then the new elements
         *                              are added at the end of this list.
         * @see                 RemoveItems()
         * @see                 AddItems()
@@ -605,10 +620,10 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   obj         The object to locate
-        * @param[out]  index           The index of the last occurrence of the specified object
+        * @param[in]   obj                     The object to locate
+        * @param[out]  index                           The index of the last occurrence of the specified object
         * @exception   E_SUCCESS                       The method is successful.
-        * @exception   E_OBJ_NOT_FOUND         The specified @c obj is not found.
+        * @exception   E_OBJ_NOT_FOUND         The specified @c obj has not been found.
         * @see                 IndexOf()
         */
        virtual result LastIndexOf(const Type& obj, int& index) const
@@ -635,9 +650,9 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   obj                             An object to remove
+        * @param[in]   obj                             The object to remove
         * @exception   E_SUCCESS               The method is successful.
-        * @exception   E_OBJ_NOT_FOUND The specified @c obj is not found.
+        * @exception   E_OBJ_NOT_FOUND The specified @c obj has not been found.
         * @see                 Add()
         * @see                 RemoveAt()
         * @see                 RemoveAll()
@@ -661,15 +676,16 @@ CATCH:
        }
 
        /**
-        * Removes all the elements in the specified @c collection.
+        * Removes all the elements from the specified collection.
         *
         * @since 2.0
         *
         * @return              An error code
         * @param[in]   collection                      The collection to remove from this list
         * @exception   E_SUCCESS                       The method is successful.
-        * @exception   E_INVALID_OPERATION     The current state of the instance prohibits the execution of the specified operation, or
-        *                                                                      the specified @c collection is modified during the operation of this method.
+        * @exception   E_INVALID_OPERATION     Either of the following conditions has occurred:
+        *                                                                      - The current state of the instance prohibits the execution of the specified operation.
+        *                                                                      - The specified @c collection is modified during the operation of this method.
         * @see                 Remove()
         * @see                 RemoveAt()
         */
@@ -720,10 +736,12 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   index                                   The index at which the object must be removed
+        * @param[in]   index                                   The index at which the object is removed
         * @exception   E_SUCCESS                               The method is successful.
-        * @exception   E_OUT_OF_RANGE                  The specified index is outside the bounds of the data structure, or
-        *                                                                              the specified @c index is equal to or greater than the number of elements or less than @c 0.
+        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred:
+        *                                                                              - The specified @c index is outside the bounds of the data structure.
+        *                                                                              - The specified @c index is greater than the number of elements.
+        *                                                                              - The specified @c index is less than @c 0.
         * @see                 InsertAt()
         */
        virtual result RemoveAt(int index)
@@ -737,18 +755,20 @@ CATCH:
        }
 
        /**
-        * Removes all elements within the specified range.
+        * Removes all the elements within the specified range.
         *
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   startIndex      The starting index of the range
-        * @param[in]   count           The number of elements to read
+        * @param[in]   startIndex                              The starting index of the range
+        * @param[in]   count                                   The number of elements to read
         * @exception   E_SUCCESS                               The method is successful.
-        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred: @n
-        *                                                                              - The specified index is outside the bounds of the data structure. @n
-        *                                                                              - The specified @c startIndex is either equal to or greater than the number of elements or less than @c 0. @n
-        *                                                                              - The specified @c count is either greater than the number of elements starting from @c startIndex or less than @c 0.
+        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred:
+        *                                                                              - The specified @c index is outside the bounds of the data structure.
+        *                                                                              - The specified @c startIndex is either greater than or equal to the number of elements.
+        *                                                                              - The specified @c startIndex is less than @c 0.
+        *                                                                              - The specified @c count is greater than the number of elements starting from @c startIndex.
+        *                                                                              - The specified @c count is less than @c 0.
         * @see                 AddItems()
         * @see                 InsertItemsFrom()
         */
@@ -809,11 +829,13 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   obj             An object to set
-        * @param[in]   index   The index at which the object must be set
+        * @param[in]   obj                                             The object to set
+        * @param[in]   index                                   The index at which the object is set
         * @exception   E_SUCCESS                               The method is successful.
-        * @exception   E_OUT_OF_RANGE                  The specified index is outside the bounds of the data structure, or
-        *                                                                              the specified @c index is equal to or greater than the number of elements or less than @c 0.
+        * @exception   E_OUT_OF_RANGE                  Either of the following conditions has occurred:
+        *                                                                              - The specified @c index is outside the bounds of the data structure.
+        *                                                                              - The specified @c index is either greater than or equal to the number of elements.
+        *                                                                              - The specified @c index is less than @c 0.
         * @see                 GetAt()
         */
        virtual result SetAt(const Type& obj, int index)
@@ -840,8 +862,9 @@ CATCH:
         * @return              An error code
         * @param[in]   comparer                The IComparerT implementation to use when comparing the elements
         * @exception   E_SUCCESS               The method is successful.
-        * @exception   E_INVALID_ARG   A specified input parameter is invalid, or
-        *                                                              the @c comparer is not valid.
+        * @exception   E_INVALID_ARG   Either of the following conditions has occurred:
+        *                                                              - The specified input parameter is invalid.
+        *                                                              - The specified @c comparer is invalid.
         */
        virtual result Sort(const IComparerT< Type >& comparer)
        {
@@ -910,13 +933,14 @@ CATCH:
         * @since 2.0
         *
         * @return              An error code
-        * @param[in]   collection      The collection to check for containment in this list
-        * @param[out]  out             Set to @c true if this list contains all of the elements in the specified collection, @n
-        *                                                      else @c false
+        * @param[in]   collection                      The collection to check for containment in this list
+        * @param[out]  out                             Set to @c true if this list contains all of the elements in the specified collection, @n
+        *                                                                      else @c false
         * @exception   E_SUCCESS                       The method is successful.
-        * @exception   E_INVALID_OPERATION     The current state of the instance prohibits the execution of the specified operation, or
-        *                                                                      the specified @c collection is modified during the operation of this method.
-        * @remarks             If the given @c collection is empty, the @c out parameter is set to @c true.
+        * @exception   E_INVALID_OPERATION     Either of the following conditions has occurred:
+        *                                                                      - The current state of the instance prohibits the execution of the specified operation.
+        *                                                                      - The specified @c collection is modified during the operation of this method.
+        * @remarks             If the given @c collection is empty, then @c out is set to @c true.
         * @see                 Contains()
         */
        virtual result ContainsAll(const ICollectionT< Type >& collection, bool& out) const
@@ -977,12 +1001,12 @@ CATCH:
         *
         * @since 2.0
         *
-        * @return              @c true if the specified instance equals to the current instance, @n
+        * @return              @c true if the specified instance equals the current instance, @n
         *                              else @c false
         * @param[in]   obj The object to compare with the calling object
-        * @remarks             This method returns @c true only if the specified object is also an instance of LinkedList class,
-        *                              both lists have the same size, and all corresponding pairs of elements in the two lists are equal.
-        *                              In other words, two lists are equal if they contain the same elements in the same order.
+        * @remarks     This method returns @c true only if the specified object is also an instance of the LinkedList class,
+        *                      both lists have the same size, and all the corresponding pairs of elements in the two lists are equal. @n
+        *                      In other words, the two lists are equal if they contain the same elements in the same order.
         */
        virtual bool Equals(const Object& obj) const
        {
@@ -1026,8 +1050,8 @@ CATCH:
         * @since 2.0
         *
         * @return      The hash value of the current instance
-        * @remarks     The two Tizen::Base::Object::Equals() instances must return the same hash value. For better performance, @n
-        *                      the used hash function must generate a random distribution for all inputs.
+        * @remarks     The two Tizen::Base::Object::Equals() instances must return the same hash value. @n
+        *                      For better performance, the used hash function must generate a random distribution for all the inputs.
         */
        virtual int GetHashCode(void) const
        {
@@ -1326,7 +1350,7 @@ public:
         *
         * @since 2.0
         *
-        * @param[in]   obj     An object to include in this node
+        * @param[in]   obj     The object to include in this node
         */
        __LinkedListNodeT(const Type& obj)
                : pPrev(null)
@@ -1374,7 +1398,7 @@ public:
         *
         * @since 2.0
         *
-        * @param[in]   list            A list to enumerate
+        * @param[in]   list            The list to enumerate
         * @param[in]   modCount        The modification count to detect the change in the list
         */
        __LinkedListEnumeratorT(const LinkedListT< Type >& list, int modCount)
@@ -1401,13 +1425,13 @@ public:
         * @since 2.0
         *
         * @return              An error code
-        * @param[out]  obj The current object
-        * @exception   E_INVALID_OPERATION       Either of the following conditions has occurred: @n
-        *                                                                      - The current state of the instance prohibits the execution of the specified operation. @n
+        * @param[out]  obj                               The current object
+        * @exception   E_INVALID_OPERATION       Either of the following conditions has occurred:
+        *                                                                      - The current state of the instance prohibits the execution of the specified operation.
         *                                                                      - This enumerator is currently positioned before the first element or
-        *                                                                      past the last element. @n
-                                           - The list is modified after this enumerator is created.
-        * @exception   E_SUCCESS                       The method is successful.
+        *                                                                      past the last element.
+        *                                                                      - The list is modified after this enumerator is created.
+        * @exception   E_SUCCESS                         The method is successful.
         */
        result GetCurrent(Type& obj) const
        {
@@ -1423,15 +1447,16 @@ public:
 
        /**
         * Moves this enumerator to the next element of the list. @n
-        * When this enumerator is first created or after call to Reset(),
+        * When this enumerator is first created or after call to Reset(),
         * the first call to MoveNext() positions this enumerator to the first element in the list.
         *
         * @since 2.0
         *
         * @return              An error code
         * @exception   E_SUCCESS                       The method is successful.
-        * @exception   E_INVALID_OPERATION     The current state of the instance prohibits the execution of the specified operation, or
-        *                                                                      the list is modified after this enumerator is created.
+        * @exception   E_INVALID_OPERATION     Either of the following conditions has occurred:
+        *                                                                      - The current state of the instance prohibits the execution of the specified operation.
+        *                                                                      - The list is modified after this enumerator is created.
         * @exception   E_OUT_OF_RANGE          The enumerator has passed the end of the list.
         * @see                 Reset()
         */
@@ -1464,14 +1489,15 @@ public:
        }
 
        /**
-        * Positions this enumerator before the first elements in the list.
+        * Positions this enumerator before the first element in the list.
         *
         * @since 2.0
         *
         * @return              An error code
         * @exception   E_SUCCESS                       The method is successful.
-        * @exception   E_INVALID_OPERATION     The current state of the instance prohibits the execution of the specified operation, or
-        *                                                                      the list is modified after this enumerator is created.
+        * @exception   E_INVALID_OPERATION     Either of the following conditions has occurred:
+        *                                                                      - The current state of the instance prohibits the execution of the specified operation.
+        *                                                                      - The list is modified after this enumerator is created.
         */
        result Reset(void)
        {