annotate trunk/src/SyntaxTree.d @ 275:e8de572e4d01

- Changed enum NodeType to NodeCategory. - Fix in ctor of class Declaration: category is Declaration, not Expression.
author aziz
date Mon, 06 Aug 2007 14:00:03 +0000
parents 32d354584b28
children d6b2f7616ca5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
142
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
1 /++
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
2 Author: Aziz Köksal
249
32d354584b28 - Upgraded license notices to GPL3.
aziz
parents: 242
diff changeset
3 License: GPL3
142
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
4 +/
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
5 module SyntaxTree;
189
b1060d432e5e - Added some members to class Node.
aziz
parents: 142
diff changeset
6 import Token;
142
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
7
275
e8de572e4d01 - Changed enum NodeType to NodeCategory.
aziz
parents: 249
diff changeset
8 enum NodeCategory
142
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
9 {
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
10 Declaration,
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
11 Statement,
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
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
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
15 }
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
16
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
17 class Node
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
18 {
275
e8de572e4d01 - Changed enum NodeType to NodeCategory.
aziz
parents: 249
diff changeset
19 NodeCategory category;
189
b1060d432e5e - Added some members to class Node.
aziz
parents: 142
diff changeset
20 Token* begin, end;
b1060d432e5e - Added some members to class Node.
aziz
parents: 142
diff changeset
21
275
e8de572e4d01 - Changed enum NodeType to NodeCategory.
aziz
parents: 249
diff changeset
22 this(NodeCategory category)
142
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
23 {
275
e8de572e4d01 - Changed enum NodeType to NodeCategory.
aziz
parents: 249
diff changeset
24 this.category = category;
142
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
25 }
189
b1060d432e5e - Added some members to class Node.
aziz
parents: 142
diff changeset
26
b1060d432e5e - Added some members to class Node.
aziz
parents: 142
diff changeset
27 void setTokens(Token* begin, Token* end)
b1060d432e5e - Added some members to class Node.
aziz
parents: 142
diff changeset
28 {
b1060d432e5e - Added some members to class Node.
aziz
parents: 142
diff changeset
29 this.begin = begin;
b1060d432e5e - Added some members to class Node.
aziz
parents: 142
diff changeset
30 this.end = end;
b1060d432e5e - Added some members to class Node.
aziz
parents: 142
diff changeset
31 }
142
50251b408965 - Added module SyntaxTree.
aziz
parents:
diff changeset
32 }