diff --git a/src/interface.c b/src/interface.c index 280c885..3fc61a6 100644 --- a/src/interface.c +++ b/src/interface.c @@ -68,11 +68,35 @@ GroundValue groundCreateValue(GroundValueType type, ...) { return createListGroundValue(va_arg(args, List)); break; } + case FUNCTION: { + return createFunctionGroundValue(va_arg(args, GroundFunction*)); + break; + } + case STRUCTVAL: { + GroundValue gv; + gv.type = STRUCTVAL; + gv.data.structVal = va_arg(args, GroundStruct*); + return gv; + break; + } + case NONE: { + return createNoneGroundValue(); + break; + } + case ERROR: + case CUSTOM: { + // FIXME + break; + } + /* default: { return createNoneGroundValue(); } + */ } + return createNoneGroundValue(); + va_end(args); }