ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-2.0/src/antlr/CommonASTWithHiddenTokens.hpp
Revision: 2469
Committed: Fri Dec 2 15:38:03 2005 UTC (18 years, 7 months ago) by tim
File size: 1524 byte(s)
Log Message:
End of the Link --> List
Return of the Oject-Oriented
replace yacc/lex parser with antlr parser

File Contents

# Content
1 #ifndef INC_CommonASTWithHiddenTokens_hpp__
2 #define INC_CommonASTWithHiddenTokens_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: CommonASTWithHiddenTokens.hpp,v 1.1 2005-12-02 15:38:02 tim Exp $
9 */
10
11 #include <antlr/config.hpp>
12 #include <antlr/CommonAST.hpp>
13
14 #ifdef ANTLR_CXX_SUPPORTS_NAMESPACE
15 namespace antlr {
16 #endif
17
18 /** A CommonAST whose initialization copies hidden token
19 * information from the Token used to create a node.
20 */
21 class ANTLR_API CommonASTWithHiddenTokens : public CommonAST {
22 public:
23 CommonASTWithHiddenTokens();
24 virtual ~CommonASTWithHiddenTokens();
25 virtual const char* typeName( void ) const
26 {
27 return CommonASTWithHiddenTokens::TYPE_NAME;
28 }
29 /// Clone this AST node.
30 virtual RefAST clone( void ) const;
31
32 // Borland C++ builder seems to need the decl's of the first two...
33 virtual void initialize(int t,const ANTLR_USE_NAMESPACE(std)string& txt);
34 virtual void initialize(RefAST t);
35 virtual void initialize(RefToken t);
36
37 virtual RefToken getHiddenAfter() const
38 {
39 return hiddenAfter;
40 }
41
42 virtual RefToken getHiddenBefore() const
43 {
44 return hiddenBefore;
45 }
46
47 static RefAST factory();
48
49 static const char* const TYPE_NAME;
50 protected:
51 RefToken hiddenBefore,hiddenAfter; // references to hidden tokens
52 };
53
54 typedef ASTRefCount<CommonASTWithHiddenTokens> RefCommonASTWithHiddenTokens;
55
56 #ifdef ANTLR_CXX_SUPPORTS_NAMESPACE
57 }
58 #endif
59
60 #endif //INC_CommonASTWithHiddenTokens_hpp__