]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/i18n/unicode/search.h
ICU-511.25.tar.gz
[apple/icu.git] / icuSources / i18n / unicode / search.h
index 474ae91e6ef553a1324a565ef0e2b7d57c9063ac..71bbf2dd529db60015b5c0abe7a5b1d01aa7228b 100644 (file)
@@ -1,6 +1,6 @@
 /*
 **********************************************************************
-*   Copyright (C) 2001-2003 IBM and others. All rights reserved.
+*   Copyright (C) 2001-2011 IBM and others. All rights reserved.
 **********************************************************************
 *   Date        Name        Description
 *  03/22/2000   helena      Creation.
 
 #include "unicode/utypes.h"
 
-#if !UCONFIG_NO_COLLATION
+/**
+ * \file 
+ * \brief C++ API: SearchIterator object.
+ */
+#if !UCONFIG_NO_COLLATION && !UCONFIG_NO_BREAK_ITERATION
 
 #include "unicode/uobject.h"
 #include "unicode/unistr.h"
@@ -32,6 +37,7 @@ typedef struct USearch USearch;
 U_NAMESPACE_BEGIN
 
 /**
+ *
  * <tt>SearchIterator</tt> is an abstract base class that provides 
  * methods to search for a pattern within a text string. Instances of
  * <tt>SearchIterator</tt> maintain a current position and scans over the 
@@ -300,12 +306,12 @@ public:
     int32_t first(UErrorCode &status);
 
     /**
-     * Returns the first index greater than <tt>position</tt> at which the 
+     * Returns the first index equal or greater than <tt>position</tt> at which the 
      * string text matches the search pattern. The iterator is adjusted so 
      * that its current index (as returned by <tt>getOffset</tt>) is the 
-     * match position if one was found. If a match is not found, 
-     * <tt>USEARCH_DONE</tt> will be returned and the iterator will be 
-     * adjusted to the index USEARCH_DONE
+     * match position if one was found.
+     * If a match is not found, <tt>USEARCH_DONE</tt> will be returned and the
+     * iterator will be adjusted to the index <tt>USEARCH_DONE</tt>.
      * @param  position where search if to start from. If position is less
      *             than or greater than the text range for searching, 
      *          an U_INDEX_OUTOFBOUNDS_ERROR will be returned
@@ -340,6 +346,12 @@ public:
      * position if one was found. If a match is not found, 
      * <tt>USEARCH_DONE</tt> will be returned and the iterator will be 
      * adjusted to the index USEARCH_DONE
+     * <p>
+     * When <tt>USEARCH_OVERLAP</tt> option is off, the last index of the
+     * result match is always less than <tt>position</tt>.
+     * When <tt>USERARCH_OVERLAP</tt> is on, the result match may span across
+     * <tt>position</tt>.
+     *
      * @param  position where search is to start from. If position is less
      *             than or greater than the text range for searching, 
      *          an U_INDEX_OUTOFBOUNDS_ERROR will be returned