00001 /* 00002 ********************************************************************** 00003 * Copyright (c) 2000, International Business Machines 00004 * Corporation and others. All Rights Reserved. 00005 ********************************************************************** 00006 * Date Name Description 00007 * 02/04/00 aliu Creation. 00008 ********************************************************************** 00009 */ 00010 #ifndef SYMTABLE_H 00011 #define SYMTABLE_H 00012 00013 class ParsePosition; 00014 class UnicodeSet; 00015 class UnicodeString; 00016 00028 class SymbolTable { 00029 public: 00030 00034 enum { SYMBOL_REF = 0x0024 /*$*/ }; 00035 00041 virtual const UnicodeString* lookup(const UnicodeString& s) const = 0; 00042 00047 virtual const UnicodeSet* lookupSet(UChar ch) const = 0; 00048 00060 virtual UnicodeString parseReference(const UnicodeString& text, 00061 ParsePosition& pos, int32_t limit) const = 0; 00062 }; 00063 00064 #endif