quakeforge/ruamoko/scheme/Primitive.r
Bill Currie 6d494bfcdf Fix a slew of warnings found by -Wall.
-Wall still isn't used yet due to a missing method in Array, and
overzealous warnings in qfcc, but this covers the necessary fixes.
2010-12-16 20:01:49 +09:00

31 lines
572 B
R

#include "Primitive.h"
#include "Machine.h"
#include "Continuation.h"
@implementation Primitive
+ (id) newFromFunc: (primfunc_t) f
{
return [[self alloc] initWithFunc: f];
}
- (id) initWithFunc: (primfunc_t) f
{
self = [super init];
func = f;
return self;
}
- (SchemeObject) invokeOnMachine: (Machine) m
{
local SchemeObject value = func ([m stack], m);
[super invokeOnMachine: m];
if (value) {
[m value: value];
[[m continuation] restoreOnMachine: m];
}
}
- (string) printForm
{
return "<primitive>";
}
@end