mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-27 14:42:07 +00:00
75ec6bf244
This is a nasty commit, sorry, but 99% of the commit is interdependent.
29 lines
485 B
R
29 lines
485 B
R
#include "BaseContinuation.h"
|
|
#include "Cons.h"
|
|
|
|
instruction_t returninst;
|
|
BaseContinuation []base;
|
|
|
|
@implementation BaseContinuation
|
|
+ (void) initialize
|
|
{
|
|
returninst.opcode = RETURN;
|
|
base = [BaseContinuation new];
|
|
}
|
|
+ (id) baseContinuation
|
|
{
|
|
return base;
|
|
}
|
|
|
|
- (void) restoreOnMachine: (Machine []) m
|
|
{
|
|
[m state].program = &returninst;
|
|
}
|
|
|
|
- (void) invokeOnMachine: (Machine []) m
|
|
{
|
|
[m value: [(Cons []) [m stack] car]];
|
|
[m state].program = &returninst;
|
|
}
|
|
|
|
@end
|