Mercurial > projects > dil
annotate trunk/src/SyntaxTree.d @ 242:7ec7ad8df9da
- Changed type of member tok in class BinaryExpression to Token*.
- Added method set() to Parser.
- Classes Parameter and Parameters inherit from Node now.
- Added member stcTok to Parameter. Changed constructor accordingly.
- Added member Other to enum NodeType.
- Added local variable 'begin' to many parse functions. Also calling the set() method to set the begin and end token for the parsed object.
- Fix: in some cases parsing AAs would cause getting caught in an infinite loop.
author | aziz |
---|---|
date | Wed, 01 Aug 2007 10:12:01 +0000 |
parents | b1060d432e5e |
children | 32d354584b28 |
rev | line source |
---|---|
142 | 1 /++ |
2 Author: Aziz Köksal | |
3 License: GPL2 | |
4 +/ | |
5 module SyntaxTree; | |
189 | 6 import Token; |
142 | 7 |
8 enum NodeType | |
9 { | |
10 Declaration, | |
11 Statement, | |
12 Expression, | |
242
7ec7ad8df9da
- Changed type of member tok in class BinaryExpression to Token*.
aziz
parents:
189
diff
changeset
|
13 Type, |
7ec7ad8df9da
- Changed type of member tok in class BinaryExpression to Token*.
aziz
parents:
189
diff
changeset
|
14 Other |
142 | 15 } |
16 | |
17 class Node | |
18 { | |
19 NodeType nodeType; | |
189 | 20 Token* begin, end; |
21 | |
142 | 22 this(NodeType nodeType) |
23 { | |
24 this.nodeType = nodeType; | |
25 } | |
189 | 26 |
27 void setTokens(Token* begin, Token* end) | |
28 { | |
29 this.begin = begin; | |
30 this.end = end; | |
31 } | |
142 | 32 } |