equal
deleted
inserted
replaced
1231 (i.e. the one that I have called) and return from it. |
1231 (i.e. the one that I have called) and return from it. |
1232 " |
1232 " |
1233 |
1233 |
1234 %{ |
1234 %{ |
1235 #ifdef __SCHTEAM__ |
1235 #ifdef __SCHTEAM__ |
1236 ERROR("unimplemented"); |
1236 return __c__._RETURN_TO(value, self.asSTContinuation()); |
|
1237 /* NOTREACHED */ |
1237 #else |
1238 #else |
1238 OBJ sndr; |
1239 OBJ sndr; |
1239 |
1240 |
1240 theContext = __thisContext; |
1241 theContext = __thisContext; |
1241 while (theContext != nil) { |
1242 while (theContext != nil) { |
1282 (i.e. the one that I have called) and return from it. |
1283 (i.e. the one that I have called) and return from it. |
1283 " |
1284 " |
1284 |
1285 |
1285 %{ |
1286 %{ |
1286 #ifdef __SCHTEAM__ |
1287 #ifdef __SCHTEAM__ |
1287 ERROR("unimplemented"); |
1288 return __c__._RETURN_TO(value, self.asSTContinuation()); |
|
1289 /* NOTREACHED */ |
1288 #else |
1290 #else |
1289 OBJ theContext, sndr; |
1291 OBJ theContext, sndr; |
1290 |
1292 |
1291 theContext = __thisContext; |
1293 theContext = __thisContext; |
1292 while (theContext != nil) { |
1294 while (theContext != nil) { |
1328 (i.e. the one that I have called) and return from it. |
1330 (i.e. the one that I have called) and return from it. |
1329 " |
1331 " |
1330 |
1332 |
1331 %{ |
1333 %{ |
1332 #ifdef __SCHTEAM__ |
1334 #ifdef __SCHTEAM__ |
1333 ERROR("unimplemented"); |
1335 return __c__._RETURN_TO(value, self.asSTContinuation()); |
|
1336 /* NOTREACHED */ |
1334 #else |
1337 #else |
1335 OBJ theContext, sndr; |
1338 OBJ theContext, sndr; |
1336 |
1339 |
1337 theContext = __thisContext; |
1340 theContext = __thisContext; |
1338 while (theContext != nil) { |
1341 while (theContext != nil) { |
1382 non-returnable contexts (which are faster). |
1385 non-returnable contexts (which are faster). |
1383 If such a context is restarted, a runtime error is raised." |
1386 If such a context is restarted, a runtime error is raised." |
1384 |
1387 |
1385 %{ /* NOCONTEXT */ |
1388 %{ /* NOCONTEXT */ |
1386 #ifdef __SCHTEAM__ |
1389 #ifdef __SCHTEAM__ |
1387 ERROR("unimplemented"); |
1390 return __c__._RETURN_FROM(value, self.asSTContinuation()); |
|
1391 /* NOTREACHED */ |
1388 #else |
1392 #else |
1389 if (__INST(sender_) == nil) { |
1393 if (__INST(sender_) == nil) { |
1390 RETURN(nil); |
1394 RETURN(nil); |
1391 } else { |
1395 } else { |
1392 __RESUMECONTEXT__(self, value, 0); |
1396 __RESUMECONTEXT__(self, value, 0); |
2365 "/ (it avoids referencing all intermediate contexts, which would mark them special, |
2369 "/ (it avoids referencing all intermediate contexts, which would mark them special, |
2366 "/ although they aren't really - this is expert knowledge, no need to understand that ...) |
2370 "/ although they aren't really - this is expert knowledge, no need to understand that ...) |
2367 |
2371 |
2368 %{ /* NOCONTEXT */ |
2372 %{ /* NOCONTEXT */ |
2369 #ifdef __SCHTEAM__ |
2373 #ifdef __SCHTEAM__ |
2370 ERROR("unimplemented"); |
2374 { |
|
2375 if (self == aContext) { |
|
2376 return __c__._RETURN(self); |
|
2377 } |
|
2378 |
|
2379 STContinuation theContext = self.sender(); |
|
2380 |
|
2381 while (theContext != null) { |
|
2382 if ((theContext == aContext) |
|
2383 || theContext.isMarkedForUnwind()) { |
|
2384 return __c__._RETURN(theContext); |
|
2385 } |
|
2386 theContext = theContext.sender(); |
|
2387 } |
|
2388 } |
2371 #else |
2389 #else |
2372 OBJ theContext; |
2390 OBJ theContext; |
2373 |
2391 |
2374 if (self == aContext) { |
2392 if (self == aContext) { |
2375 RETURN (self); |
2393 RETURN (self); |
2870 ! ! |
2888 ! ! |
2871 |
2889 |
2872 !Context class methodsFor:'documentation'! |
2890 !Context class methodsFor:'documentation'! |
2873 |
2891 |
2874 version |
2892 version |
2875 ^ '$Header: /cvs/stx/stx/libbasic/Context.st,v 1.222 2015-05-25 23:06:42 cg Exp $' |
2893 ^ '$Header: /cvs/stx/stx/libbasic/Context.st,v 1.223 2015-05-26 18:55:30 cg Exp $' |
2876 ! |
2894 ! |
2877 |
2895 |
2878 version_CVS |
2896 version_CVS |
2879 ^ '$Header: /cvs/stx/stx/libbasic/Context.st,v 1.222 2015-05-25 23:06:42 cg Exp $' |
2897 ^ '$Header: /cvs/stx/stx/libbasic/Context.st,v 1.223 2015-05-26 18:55:30 cg Exp $' |
2880 ! |
2898 ! |
2881 |
2899 |
2882 version_HG |
2900 version_HG |
2883 |
2901 |
2884 ^ '$Changeset: <not expanded> $' |
2902 ^ '$Changeset: <not expanded> $' |