Main Page | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

unimatch.h

00001 /*
00002 * Copyright (C) 2001, International Business Machines Corporation and others. All Rights Reserved.
00003 **********************************************************************
00004 *   Date        Name        Description
00005 *   07/18/01    aliu        Creation.
00006 **********************************************************************
00007 */
00008 #ifndef UNIMATCH_H
00009 #define UNIMATCH_H
00010 
00011 #include "unicode/utypes.h"
00012 
00013 U_NAMESPACE_BEGIN
00014 
00015 class Replaceable;
00016 class UnicodeString;
00017 
00022 enum UMatchDegree {
00029     U_MISMATCH,
00030     
00040     U_PARTIAL_MATCH,
00041     
00049     U_MATCH
00050 };
00051 
00056 class U_I18N_API UnicodeMatcher {
00057 
00058 public:
00059 
00105     virtual UMatchDegree matches(const Replaceable& text,
00106                                  int32_t& offset,
00107                                  int32_t limit,
00108                                  UBool incremental) = 0;
00109 
00121     virtual UnicodeString& toPattern(UnicodeString& result,
00122                                      UBool escapeUnprintable = FALSE) const = 0;
00123 
00130     virtual UBool matchesIndexValue(uint8_t v) const = 0;
00131 };
00132 
00133 U_NAMESPACE_END
00134 
00135 #endif

Generated on Sun May 22 18:49:52 2005 for ICU 2.1 by  doxygen 1.4.2