00001 #ifndef INC_RecognitionException_hpp__ 00002 # define INC_RecognitionException_hpp__ 00003 00004 /* ANTLR Translator Generator 00005 * Project led by Terence Parr at http://www.jGuru.com 00006 * Software rights: http://www.antlr.org/license.html 00007 * 00008 * $Id: RecognitionException.hpp,v 1.1 2004/10/08 16:27:34 dfisher Exp $ 00009 */ 00010 00011 # include <antlr/config.hpp> 00012 # include <antlr/ANTLRException.hpp> 00013 00014 # ifdef ANTLR_CXX_SUPPORTS_NAMESPACE 00015 namespace antlr 00016 { 00017 # endif 00018 class ANTLR_API RecognitionException : public ANTLRException 00019 { 00020 public: 00021 RecognitionException(); 00022 RecognitionException(const ANTLR_USE_NAMESPACE(std)string& s); 00023 RecognitionException(const ANTLR_USE_NAMESPACE(std)string& s, 00024 const ANTLR_USE_NAMESPACE(std)string& fileName_, 00025 int line_,int column_); 00026 00027 virtual ~RecognitionException() throw() 00028 { 00029 } 00030 00032 virtual ANTLR_USE_NAMESPACE(std)string getFilename() const 00033 { 00034 return fileName; 00035 } 00039 virtual int getLine() const 00040 { 00041 return line; 00042 } 00046 virtual int getColumn() const 00047 { 00048 return column; 00049 } 00050 #if 0 00051 00054 virtual ANTLR_USE_NAMESPACE(std)string getErrorMessage() const 00055 { 00056 return getMessage(); 00057 } 00058 #endif 00059 00061 virtual ANTLR_USE_NAMESPACE(std)string toString() const; 00062 00064 virtual ANTLR_USE_NAMESPACE(std)string getFileLineColumnString() const; 00065 protected: 00066 ANTLR_USE_NAMESPACE(std)string fileName; // not used by treeparsers 00067 int line; // not used by treeparsers 00068 int column; // not used by treeparsers 00069 }; 00070 00071 # ifdef ANTLR_CXX_SUPPORTS_NAMESPACE 00072 } 00073 # endif 00074 00075 #endif //INC_RecognitionException_hpp__