OpenMD 3.1
Molecular Dynamics in the Open
Loading...
Searching...
No Matches
ANTLRException.hpp
1#ifndef INC_ANTLRException_hpp__
2#define INC_ANTLRException_hpp__
3
4/* ANTLR Translator Generator
5 * Project led by Terence Parr at http://www.jGuru.com
6 * Software rights: http://www.antlr.org/license.html
7 *
8 * $Id$
9 */
10
11#include <antlr/config.hpp>
12#include <string>
13
14#ifdef ANTLR_CXX_SUPPORTS_NAMESPACE
15namespace antlr {
16#endif
17
18class ANTLR_API ANTLRException
19{
20public:
21 /// Create ANTLR base exception without error message
22 ANTLRException() : text("")
23 {
24 }
25 /// Create ANTLR base exception with error message
26 ANTLRException(const ANTLR_USE_NAMESPACE(std)string& s)
27 : text(s)
28 {
29 }
30 virtual ~ANTLRException() throw()
31 {
32 }
33
34 /** Return complete error message with line/column number info (if present)
35 * @note for your own exceptions override this one. Call getMessage from
36 * here to get the 'clean' error message stored in the text attribute.
37 */
38 virtual ANTLR_USE_NAMESPACE(std)string toString() const
39 {
40 return text;
41 }
42
43 /** Return error message without additional info (if present)
44 * @note when making your own exceptions classes override toString
45 * and call in toString getMessage which relays the text attribute
46 * from here.
47 */
48 virtual ANTLR_USE_NAMESPACE(std)string getMessage() const
49 {
50 return text;
51 }
52private:
53 ANTLR_USE_NAMESPACE(std)string text;
54};
55#ifdef ANTLR_CXX_SUPPORTS_NAMESPACE
56}
57#endif
58
59#endif //INC_ANTLRException_hpp__
ANTLRException(const std ::string &s)
Create ANTLR base exception with error message.
virtual std::string getMessage() const
Return error message without additional info (if present)
ANTLRException()
Create ANTLR base exception without error message.
virtual std::string toString() const
Return complete error message with line/column number info (if present)