]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/common/unicode/schriter.h
ICU-531.48.tar.gz
[apple/icu.git] / icuSources / common / unicode / schriter.h
index e487512a69ed7f2805bddc1b49428250b6ac551e..d0b5e22503cff261d2cd240ff12007f937f783b2 100644 (file)
@@ -1,7 +1,7 @@
 /*
 ******************************************************************************
 *
-*   Copyright (C) 1998-2003, International Business Machines
+*   Copyright (C) 1998-2005, International Business Machines
 *   Corporation and others.  All Rights Reserved.
 *
 ******************************************************************************
 #include "unicode/chariter.h"
 #include "unicode/uchriter.h"
 
+/**
+ * \file 
+ * \brief C++ API: String Character Iterator
+ */
 U_NAMESPACE_BEGIN
 /**
  * A concrete subclass of CharacterIterator that iterates over the
@@ -50,9 +55,9 @@ public:
    * Create an iterator over the UnicodeString referred to by "textStr".
    * The iteration range is the whole string, and the starting
    * position is specified by "textPos".  If "textPos" is outside the valid
-   * iteration range, the behavior of this object is undefined.  
-   * @textStr The unicode string used to create an iterator 
-   * @textPos The starting position of the iteration
+   * iteration range, the behavior of this object is undefined.
+   * @param textStr The unicode string used to create an iterator
+   * @param textPos The starting position of the iteration
    * @stable ICU 2.0
    */
   StringCharacterIterator(const UnicodeString&    textStr,
@@ -67,7 +72,7 @@ public:
    * "textBegin" and "textEnd" don't form a valid range on "text" (i.e.,
    * textBegin >= textEnd or either is negative or greater than text.size()),
    * or "textPos" is outside the range defined by "textBegin" and "textEnd",
-   * the behavior of this iterator is undefined.  
+   * the behavior of this iterator is undefined.
    * @param textStr    The unicode string used to create the StringCharacterIterator
    * @param textBegin  The begin position of the iteration range
    * @param textEnd    The end position of the iteration range
@@ -82,7 +87,7 @@ public:
   /**
    * Copy constructor.  The new iterator iterates over the same range
    * of the same string as "that", and its initial position is the
-   * same as "that"'s current position.  
+   * same as "that"'s current position.
    * The UnicodeString object in "that" is copied.
    * @param that The StringCharacterIterator to be copied
    * @stable ICU 2.0
@@ -90,7 +95,7 @@ public:
   StringCharacterIterator(const StringCharacterIterator&  that);
 
   /**
-   * Destructor.  
+   * Destructor.
    * @stable ICU 2.0
    */
   virtual ~StringCharacterIterator();
@@ -100,7 +105,7 @@ public:
    * range of the same string as "that", and refers to the same
    * character within that string as "that" does.
    * @param that The object to be copied.
-   * @return the newly created object.  
+   * @return the newly created object.
    * @stable ICU 2.0
    */
   StringCharacterIterator&
@@ -108,10 +113,10 @@ public:
 
   /**
    * Returns true if the iterators iterate over the same range of the
-   * same string and are pointing at the same character.  
+   * same string and are pointing at the same character.
    * @param that The ForwardCharacterIterator to be compared for equality
    * @return true if the iterators iterate over the same range of the
-   * same string and are pointing at the same character.  
+   * same string and are pointing at the same character.
    * @stable ICU 2.0
    */
   virtual UBool          operator==(const ForwardCharacterIterator& that) const;
@@ -119,12 +124,12 @@ public:
   /**
    * Returns a new StringCharacterIterator referring to the same
    * character in the same range of the same string as this one.  The
-   * caller must delete the new iterator. 
-   * @return the newly cloned object. 
+   * caller must delete the new iterator.
+   * @return the newly cloned object.
    * @stable ICU 2.0
    */
   virtual CharacterIterator* clone(void) const;
-                                
+
   /**
    * Sets the iterator to iterate over the provided string.
    * @param newText The string to be iterated over
@@ -136,24 +141,24 @@ public:
    * Copies the UnicodeString under iteration into the UnicodeString
    * referred to by "result".  Even if this iterator iterates across
    * only a part of this string, the whole string is copied.
-   * @param result Receives a copy of the text under iteration.  
+   * @param result Receives a copy of the text under iteration.
    * @stable ICU 2.0
    */
   virtual void            getText(UnicodeString& result);
 
   /**
-   * Return a class ID for this object (not really public) 
+   * Return a class ID for this object (not really public)
    * @return a class ID for this object.
    * @stable ICU 2.0
    */
   virtual UClassID         getDynamicClassID(void) const;
 
   /**
-   * Return a class ID for this class (not really public) 
+   * Return a class ID for this class (not really public)
    * @return a class ID for this class
    * @stable ICU 2.0
    */
-  static inline UClassID   getStaticClassID(void);
+  static UClassID   U_EXPORT2 getStaticClassID(void);
 
 protected:
   /**
@@ -176,17 +181,7 @@ protected:
    */
   UnicodeString            text;
 
-private:
-  static const char        fgClassID;
 };
 
-inline UClassID
-StringCharacterIterator::getStaticClassID(void) 
-{ return (UClassID)(&fgClassID); }
-
-inline UClassID
-StringCharacterIterator::getDynamicClassID(void) const 
-{ return StringCharacterIterator::getStaticClassID(); }
-
 U_NAMESPACE_END
 #endif