226 |
226 |
227 doesNotUnderstand: aMessage |
227 doesNotUnderstand: aMessage |
228 "Any message to a Lazy will end up here." |
228 "Any message to a Lazy will end up here." |
229 |
229 |
230 startSemaphore notNil ifTrue:[ |
230 startSemaphore notNil ifTrue:[ |
231 IsDebuggingQuery query ifTrue:[ |
231 Processor activeProcess isDebuggerProcess ifTrue:[ |
232 "enable debugging / inspecting without evaluating" |
232 "enable debugging / inspecting without evaluating" |
233 ^ aMessage sendTo:self usingClass:Object. |
233 ^ aMessage sendTo:self usingClass:Object. |
234 ]. |
234 ]. |
235 self _evaluate_. |
235 self _evaluate_. |
236 ]. |
236 ]. |
237 |
237 |
238 ^ aMessage sendTo:result. |
238 ^ aMessage sendTo:result. |
|
239 |
|
240 "Modified: / 01-02-2018 / 10:17:27 / stefan" |
239 ! |
241 ! |
240 |
242 |
241 perform:aSelector withArguments:argArray |
243 perform:aSelector withArguments:argArray |
242 "send the message aSelector with all args taken from argArray |
244 "send the message aSelector with all args taken from argArray |
243 to the receiver." |
245 to the receiver." |
244 |
246 |
245 startSemaphore notNil ifTrue:[ |
247 startSemaphore notNil ifTrue:[ |
246 IsDebuggingQuery query ifTrue:[ |
248 Processor activeProcess isDebuggerProcess ifTrue:[ |
247 "enable debugging / inspecting" |
249 "enable debugging / inspecting" |
248 ^ super perform:aSelector withArguments:argArray. |
250 ^ super perform:aSelector withArguments:argArray. |
249 ]. |
251 ]. |
250 self _evaluate_. |
252 self _evaluate_. |
251 ]. |
253 ]. |
252 ^ result perform:aSelector withArguments:argArray. |
254 ^ result perform:aSelector withArguments:argArray. |
|
255 |
|
256 "Modified: / 01-02-2018 / 10:17:08 / stefan" |
253 ! ! |
257 ! ! |
254 |
258 |
255 !Lazy methodsFor:'testing'! |
259 !Lazy methodsFor:'testing'! |
256 |
260 |
257 isLazyValue |
261 isLazyValue |