equal
deleted
inserted
replaced
130 messages |
130 messages |
131 "helper for parse tree walking" |
131 "helper for parse tree walking" |
132 |
132 |
133 "/ sigh; ST/X encodes things differently ... |
133 "/ sigh; ST/X encodes things differently ... |
134 |
134 |
135 |r nd msgs msg| |
135 |r nd msgs| |
136 |
136 |
137 msgs := OrderedCollection new. |
137 msgs := OrderedCollection new. |
138 |
138 |
139 r := receiver. |
139 r := receiver. |
140 [r isCascade] whileTrue:[ |
140 [r isCascade] whileTrue:[ |
142 ]. |
142 ]. |
143 r := r receiver. |
143 r := r receiver. |
144 |
144 |
145 nd := self. |
145 nd := self. |
146 [nd isCascade] whileTrue:[ |
146 [nd isCascade] whileTrue:[ |
147 msg := MessageNode new. |
147 msgs addFirst:(MessageNode receiver:r selector:nd selector args:nd args lineno:nd lineNumber). |
148 msg receiver:r selector:nd selector args:nd args lineno:nd lineNumber. |
|
149 msgs addFirst:msg. |
|
150 nd := nd receiver. |
148 nd := nd receiver. |
151 ]. |
149 ]. |
152 msg := MessageNode new. |
150 msgs addFirst:(MessageNode receiver:r selector:nd selector args:nd args lineno:nd lineNumber). |
153 msg receiver:r selector:nd selector args:nd args lineno:nd lineNumber. |
|
154 msgs addFirst:msg. |
|
155 |
151 |
156 ^ msgs |
152 ^ msgs |
157 |
153 |
158 "Created: / 12-09-2011 / 10:04:31 / cg" |
154 "Created: / 12-09-2011 / 10:04:31 / cg" |
|
155 "Modified: / 26-03-2018 / 15:36:30 / stefan" |
159 ! |
156 ! |
160 |
157 |
161 nodeDo:anEnumerator |
158 nodeDo:anEnumerator |
162 "helper for parse tree walking" |
159 "helper for parse tree walking" |
163 |
160 |
164 "/ sigh; ST/X encodes things differently ... |
161 "/ sigh; ST/X encodes things differently ... |
165 |
162 |
166 |r nd msgs msg| |
163 |r nd msgs| |
167 |
164 |
168 msgs := OrderedCollection new. |
165 msgs := OrderedCollection new. |
169 |
166 |
170 r := receiver. |
167 r := receiver. |
171 [r isCascade] whileTrue:[ |
168 [r isCascade] whileTrue:[ |
173 ]. |
170 ]. |
174 r := r receiver. |
171 r := r receiver. |
175 |
172 |
176 nd := self. |
173 nd := self. |
177 [nd isCascade] whileTrue:[ |
174 [nd isCascade] whileTrue:[ |
178 msg := MessageNode new. |
175 msgs addFirst:(MessageNode receiver:r selector:nd selector args:nd args lineno:nd lineNumber). |
179 msg receiver:r selector:nd selector args:nd args lineno:nd lineNumber. |
|
180 msgs addFirst:msg. |
|
181 nd := nd receiver. |
176 nd := nd receiver. |
182 ]. |
177 ]. |
183 msg := MessageNode new. |
178 msgs addFirst:(MessageNode receiver:r selector:nd selector args:nd args lineno:nd lineNumber). |
184 msg receiver:r selector:nd selector args:nd args lineno:nd lineNumber. |
|
185 msgs addFirst:msg. |
|
186 |
179 |
187 ^ anEnumerator doCascade:self receiver:r messages:msgs |
180 ^ anEnumerator doCascade:self receiver:r messages:msgs |
188 |
181 |
189 "Created: 19.6.1997 / 16:39:17 / cg" |
182 "Created: / 19-06-1997 / 16:39:17 / cg" |
190 "Modified: 19.6.1997 / 17:32:47 / cg" |
183 "Modified: / 26-03-2018 / 15:37:12 / stefan" |
191 ! ! |
184 ! ! |
192 |
185 |
193 !CascadeNode methodsFor:'evaluation'! |
186 !CascadeNode methodsFor:'evaluation'! |
194 |
187 |
195 evaluateForCascadeIn:anEnvironment |
188 evaluateForCascadeIn:anEnvironment |