annotate src/parser/Action.d @ 207:e0551773a005

Added the correct version.
author Anders Johnsen <skabet@gmail.com>
date Tue, 12 Aug 2008 18:19:34 +0200
parents d3c148ca429b
children 42e663451371
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
1 module parser.Action;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
2
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
3 import lexer.Token;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
4
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
5 import basic.Attribute;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
6
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
7 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
8 Used to indicate what type of operator is used in a given binary expression
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
9 (and unary expressions?)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
10 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
11 public enum Operator
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
12 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
13 Assign,
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
14 AddAssign,
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
15 SubAssign,
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
16 MulAssign,
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
17 DivAssign,
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
18 ModAssign,
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
19
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
20 Eq, Ne,
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
21
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
22 Lt, Le,
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
23 Gt, Ge,
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
24
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
25 Add, Sub,
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
26 Mul, Div, Mod,
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
27
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
28 LeftShift, RightShift, UnsignedRightShift,
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
29 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
30
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
31
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
32 class Id
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
33 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
34 public static Id opCall(Token tok)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
35 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
36 auto id = new Id();
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
37 id.tok = tok;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
38 return id;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
39 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
40 Token tok;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
41 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
42
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
43 class PointerTypeId : Id
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
44 {
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
45 public static PointerTypeId opCall(Id id)
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
46 {
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
47 auto p = new PointerTypeId();
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
48 p.id = id;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
49 return p;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
50 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
51
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
52 Id id;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
53 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
54
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
55 class StaticArrayTypeId : Id
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
56 {
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
57 public static StaticArrayTypeId opCall(Id id, Object number)
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
58 {
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
59 auto a = new StaticArrayTypeId();
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
60 a.id = id;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
61 a.number = number;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
62 return a;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
63 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
64
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
65 Id id;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
66 Object number;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
67 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
68
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
69 class FunctionTypeId : Id
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
70 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
71 public static FunctionTypeId opCall(Id id, DeclT[] decls)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
72 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
73 auto f = new FunctionTypeId();
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
74 f.id = id;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
75 f.decls = decls;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
76 return f;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
77 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
78
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
79 Id id;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
80 DeclT[] decls;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
81 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
82
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
83 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
84 Represents a fully qualified name, with some packages and a final identifier.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
85 The identifier should always be set, but packages may have length 0.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
86 **/
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
87 struct ModuleName
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
88 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
89 Id id;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
90 Id[] packages;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
91
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
92 /// Get the full ranged spanned by packages and identifier
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
93 SourceRange asRange()
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
94 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
95 SourceRange r = id.tok.asRange();
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
96 foreach (identifier; packages)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
97 r = r + identifier.tok.asRange();
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
98 return r;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
99 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
100 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
101
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
102 /**
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
103 A few aliases to indicate what methods should be dealing with the same
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
104 types.
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
105 Not typesafe, and not using typedef because users would need a lot of
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
106 casts (and base type would be void*, so no possibility to synchronize,
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
107 print etc.)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
108 */
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
109 alias Object ExprT;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
110 alias Object StmtT; /// ditto
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
111 alias Object DeclT; /// ditto
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
112 alias Object ModuleT; /// ditto
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
113
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
114 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
115 All methods are optional.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
116
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
117 Warning: Interface is not stable yet. Use the `override` keyword in all classes
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
118 inheriting from this to get warning if the interface changes.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
119 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
120 abstract class Action
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
121 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
122
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
123
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
124 // -- Modules --
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
125
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
126 ModuleT actOnModule(ref Token _module, char[] name)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
127 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
128 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
129 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
130
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
131 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
132 This action is called when a file does not start with a module
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
133 declaration - in which case there is no Token available.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
134
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
135 Instead a SLoc to the start of the file is given.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
136 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
137 ModuleT actOnImplicitModule(SourceLocation fileStart, char[] name)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
138 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
139 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
140 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
141
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
142 void actOnModuleDecl(ModuleT m, DeclT d)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
143 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
144 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
145
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
146 // -- Declarations --
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
147
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
148 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
149 Called for an import statement, that may be renamed. Id name is null,
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
150 there is no rename.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
151
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
152 If there are selective imports, its handled in add
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
153 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
154 DeclT actOnImport(ref Token _import, ref ModuleName target, Id* name)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
155 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
156 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
157 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
158
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
159 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
160 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
161 void addSelectiveImport(DeclT _import, ref Id target, Id* name)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
162 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
163 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
164
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
165 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
166 Either we should have one case that handles a lot of things, or we should
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
167 have a lot of separate cases.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
168 As an example, this method could handle the params in `int f(int, int)`
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
169 as well as handling `int x` at both top-level, in classes and in methods.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
170
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
171 The other solution is an addParamToFunc or similar.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
172 */
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
173 DeclT actOnDeclarator(ref Id type, ref Id name, ExprT init, Attribute att)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
174 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
175 return null;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
176 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
177
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
178 DeclT actOnAliasDecl(DeclT decl, Attribute att)
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
179 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
180 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
181 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
182
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
183 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
184 Add a struct member to a struct.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
185 */
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
186 void actOnStructMember(DeclT st_decl, DeclT m_decl)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
187 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
188 return null;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
189 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
190
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
191 /**
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
192 Add a class member to a struct.
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
193 */
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
194 void actOnClassMember(DeclT cl_decl, DeclT m_decl)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
195 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
196 return null;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
197 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
198
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
199 /**
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
200 Add a class member to a struct.
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
201 */
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
202 void actOnClassBaseClass(DeclT cl_decl, ref Id name)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
203 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
204 return null;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
205 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
206
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
207 /**
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
208 Add a class member to a struct.
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
209 */
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
210 void actOnInterfaceMember(DeclT if_decl, DeclT m_decl)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
211 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
212 return null;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
213 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
214
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
215 /**
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
216 Add a class member to a struct.
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
217 */
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
218 void actOnInterfaceBaseClass(DeclT if_decl, ref Id name)
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
219 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
220 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
221 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
222
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
223 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
224 Add an initialization expression to a previously created decl.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
225
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
226 Used for default values on function params and for values to local
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
227 variables.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
228 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
229 void addInitToDeclarator(DeclT decl, ExprT exp)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
230 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
231 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
232
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
233 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
234 Called at the start of a function, doesn't get a lot of info - that is
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
235 added later on, through addFuncArg and actOnEndOfFunction.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
236 */
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
237 DeclT actOnStartOfFunctionDef(ref Id type, ref Id name, Attribute att)
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
238 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
239 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
240 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
241
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
242 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
243 Add a new parameter to the function func.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
244 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
245 void addFuncArg(DeclT func, Id type, Id name)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
246 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
247 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
248
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
249 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
250 Finish off the function, by giving it the body (a single statement, so
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
251 you probably want some sort of compound statement)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
252 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
253 DeclT actOnEndOfFunction(DeclT func, StmtT stmts)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
254 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
255 return func;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
256 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
257
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
258 // -- Statements --
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
259
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
260 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
261 Called after parsing a function/while/for/whatever body.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
262
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
263 Note that stmts is to be considered temporary, it might point into the
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
264 stack and needs to be copied before saving.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
265 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
266 StmtT actOnCompoundStmt(ref Token left, ref Token right, StmtT[] stmts)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
267 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
268 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
269 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
270
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
271 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
272 An expression was used as a statement - this includes assignments,
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
273 function calls.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
274
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
275 Additionally the D spec dictates that expressions with no effect are not
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
276 legal as statements, but the parser can't test for this so it has to be
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
277 done in the later stages.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
278 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
279 StmtT actOnExprStmt(ExprT exp)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
280 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
281 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
282 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
283
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
284 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
285 Called after parsing return statements.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
286
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
287 loc is the return token.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
288 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
289 StmtT actOnReturnStmt(ref Token loc, ExprT exp)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
290 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
291 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
292 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
293
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
294 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
295 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
296 StmtT actOnIfStmt(ref Token ifTok, ExprT cond, StmtT thenBody,
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
297 ref Token elseTok, StmtT elseBody)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
298 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
299 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
300 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
301
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
302 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
303 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
304 StmtT actOnWhileStmt(ref Token whileTok, ExprT cond, StmtT whileBody)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
305 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
306 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
307 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
308
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
309 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
310 */
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
311 StmtT actOnForStmt(ref Token forTok, StmtT init, ExprT cond, ExprT incre, StmtT forBody)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
312 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
313 return null;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
314 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
315
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
316 /**
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
317 */
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
318 StmtT actOnDeclStmt(DeclT decl)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
319 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
320 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
321 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
322
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
323 StmtT actOnStartOfSwitchStmt(Token _switch, ExprT exp)
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
324 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
325 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
326 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
327
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
328 void actOnCaseStmt(StmtT stmt, Token _case, ExprT[] exps, StmtT[] stmts)
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
329 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
330 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
331
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
332 void actOnDefaultStmt(StmtT stmt, Token _default, StmtT[] stmts)
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
333 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
334 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
335
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
336 StmtT actOnFinishSwitchStmt(StmtT sw)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
337 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
338 return sw;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
339 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
340
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
341 // -- Expressions --
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
342
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
343 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
344 A single numerical constant -- this can be absolutely any kind of number.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
345 Integers, floats, hex, octal, binary, imaginary and so on.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
346 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
347 ExprT actOnNumericConstant(Token op)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
348 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
349 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
350 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
351
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
352 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
353 This is called when identifiers are used in expressions.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
354 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
355 ExprT actOnIdentifierExp(Id id)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
356 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
357 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
358 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
359
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
360 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
361 This is called when strings are used in expression
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
362 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
363 ExprT actOnStringExp(Token t)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
364 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
365 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
366 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
367
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
368 /**
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
369 This is called when strings are used in expression
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
370 */
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
371 ExprT actOnStringExp(Token t)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
372 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
373 return null;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
374 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
375
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
376 /**
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
377 Unary operator.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
378 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
379 ExprT actOnUnaryOp(Token op, ExprT operand)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
380 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
381 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
382 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
383
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
384 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
385 Binary operator.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
386 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
387 ExprT actOnBinaryOp(SLoc op_loc, Operator op, ExprT l, ExprT r)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
388 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
389 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
390 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
391
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
392 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
393 Called when using the 'dot' operator.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
394 The left hand side can be any expression, but its only possible to look
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
395 up an identifier.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
396 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
397 ExprT actOnMemberReference(ExprT lhs, SourceLocation op, Id member)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
398 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
399 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
400 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
401
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
402 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
403 Called when function calls are encountered.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
404
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
405 Note that args is temporary and might point into the stack. Remember to
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
406 copy before saving a reference to it.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
407 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
408 ExprT actOnCallExpr(ExprT func, ref Token left_paren, ExprT[] args,
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
409 ref Token right_paren)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
410 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
411 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
412 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
413
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
414 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
415 Called when function calls are encountered.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
416 */
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
417 ExprT actOnIndexExpr(ExprT array, ref Token left_bracket, ExprT index,
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
418 ref Token right_bracket)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
419 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
420 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
421 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
422
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
423 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
424 Cast expression.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
425 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
426 ExprT actOnCastExpr(ref Token _cast, Id type, ExprT exp)
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
427 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
428 return null;
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
429 }
207
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
430
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
431 /**
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
432 New expression.
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
433 */
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
434 ExprT actOnNewExpr(ref Id type, ExprT[] a_args, ExprT[] c_args)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
435 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
436 return null;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
437 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
438
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
439 /**
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
440 Array Literal expression.
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
441 */
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
442 ExprT actOnArrayLiteralExpr(ExprT[] exps, SLoc start, SLoc end)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
443 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
444 return null;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
445 }
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
446
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
447 /**
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
448 Null expression.
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
449 */
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
450 ExprT actOnNullExpr(SLoc pos)
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
451 {
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
452 return null;
e0551773a005 Added the correct version.
Anders Johnsen <skabet@gmail.com>
parents: 206
diff changeset
453 }
206
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
454 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
455
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
456 /**
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
457 Doesn't do anything at all - can be used for benchmarking the parser.
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
458 */
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
459 class NullAction : Action
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
460 {
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
461 }
d3c148ca429b Major moving of files. all src now goes into src, all docs in docs.
Anders Johnsen <skabet@gmail.com>
parents:
diff changeset
462