Differences From Artifact [79741a3186611288]:
- File
polemy/ast.d
- 2010-11-08 11:42:14 - part of checkin [5e407d7cf8] on branch trunk - Lexer Refactored so that it can accpet multi-symbol token (user: kinaba) [annotate]
To Artifact [9b22488b3393157f]:
- File
polemy/ast.d
- 2010-11-08 11:57:48 - part of checkin [077506b38c] on branch trunk - Generic toString utility added. (user: kinaba) [annotate]
17 17 }
18 18
19 19 class DeclStatement : Statement
20 20 {
21 21 string var;
22 22 Expression expr;
23 23 mixin SimpleConstructor;
24 - mixin SimpleCompare; // do not take "pos" into account
24 + mixin SimpleCompare;
25 25 }
26 26
27 27 class ExprStatement : Statement
28 28 {
29 29 Expression expr;
30 30 mixin SimpleConstructor;
31 - mixin SimpleCompare; // do not take "pos" into account
31 + mixin SimpleCompare;
32 32 }
33 33
34 34 abstract class Expression
35 35 {
36 36 immutable LexPosition pos;
37 37 mixin SimpleConstructor;
38 - mixin SimpleCompare; // do not take "pos" into account
38 + mixin SimpleCompare;
39 39 }
40 40
41 41 class StrLiteralExpression : Expression
42 42 {
43 43 string data;
44 44 mixin SimpleConstructor;
45 - mixin SimpleCompare; // do not take "pos" into account
45 + mixin SimpleCompare;
46 46 }
47 47
48 48 class IntLiteralExpression : Expression
49 49 {
50 50 BigInt data;
51 51 mixin SimpleConstructor;
52 - mixin SimpleCompare; // do not take "pos" into account
52 + mixin SimpleCompare;
53 53 }
54 54
55 55 class VarExpression : Expression
56 56 {
57 57 string var;
58 58 mixin SimpleConstructor;
59 - mixin SimpleCompare; // do not take "pos" into account
59 + mixin SimpleCompare;
60 60 }
61 61
62 62 class AssignExpression : Expression
63 63 {
64 64 Expression lhs;
65 65 Expression rhs;
66 66 mixin SimpleConstructor;
67 - mixin SimpleCompare; // do not take "pos" into account
67 + mixin SimpleCompare;
68 68 }
69 69
70 70 class FuncallExpression : Expression
71 71 {
72 72 Expression fun;
73 73 Expression[] args;
74 74 this(immutable LexPosition pos, Expression fun, Expression[] args...)
75 75 { super(pos); this.fun=fun; this.args=args.dup; }
76 - mixin SimpleCompare; // do not take "pos" into account
76 + mixin SimpleCompare;
77 77 }
78 78
79 79 class FunLiteralExpression : Expression
80 80 {
81 81 string[] params;
82 82 Program funbody;
83 83 mixin SimpleConstructor;
84 - mixin SimpleCompare; // do not take "pos" into account
84 + mixin SimpleCompare;
85 85 }