00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef SYMTABLE_H
00013 #define SYMTABLE_H
00014
00015 #include "unicode/utypes.h"
00016
00017 #if U_SHOW_CPLUSPLUS_API
00018
00019 #include "unicode/uobject.h"
00020
00027 U_NAMESPACE_BEGIN
00028
00029 class ParsePosition;
00030 class UnicodeFunctor;
00031 class UnicodeSet;
00032 class UnicodeString;
00033
00059 class U_COMMON_API SymbolTable {
00060 public:
00061
00066 enum { SYMBOL_REF = 0x0024 };
00067
00072 virtual ~SymbolTable();
00073
00083 virtual const UnicodeString* lookup(const UnicodeString& s) const = 0;
00084
00093 virtual const UnicodeFunctor* lookupMatcher(UChar32 ch) const = 0;
00094
00112 virtual UnicodeString parseReference(const UnicodeString& text,
00113 ParsePosition& pos, int32_t limit) const = 0;
00114 };
00115 U_NAMESPACE_END
00116
00117 #endif
00118
00119 #endif